小欧准备去商店买东西,商店中有n个物品从左向右摆成一排,第i个物品的体积为ai,价值为bi。小欧有一个容量为x的背包,她每次看到能装进背包里的物品都会装进去,如果装不进去就跳过这个物品。
小欧想知道,她总共能买多少价值的物品?时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 256M,其他语言512M
输入描述:
第一行输入两个正整数n,x,代表物品数量和背包容量。 接下来的n行,每行输入两个正整数ai和bi,代表每个物品的体积和价值。 1<=n<=10^5 1<=ai,bi,x<=10^9输出描述:
一个整数,代表总价值之和。
示例1
输入例子:
3 5 4 3 2 5 1 3输出例子:
6例子说明:
先买第一个物品,价值为 3。
遇到第二个物品时,此时剩余容量为 1,无法购买。
然后买第三个物品,价值为 3。
具体步骤
使用的语言是C
#include <stdio.h>
int main() {
int n, x;
while (scanf("%d %d", &n, &x) != EOF) {
long long a, b;
long long total = 0;
for(int i = 0; i < n; i++) {
scanf("%lld %lld", &a, &b);
if(x >= a) {
x -= a;


被折叠的 条评论
为什么被折叠?



