文星伊的老婆 @ 2018-08-20 17:34:36
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int a,b,s,l,m[5001],n[5001],k=0;
cin>>l>>s>>a>>b;
for(int i=1;i<=l;i++){
cin>>m[i]>>n[i];
for(int j=i;j>1;j--){
if(n[j]<n[j-1]){
swap(n[j],n[j-1]);
swap(m[j],m[j-1]);
}
}
}
for(int i=1;i<=l;i++){
s-=n[i];
if(s>=0&&(a+b)>=m[i]){
k++;
}else if(s<0){
break;
}
}
cout<<k;
return 0;
}
by The_Stardust @ 2018-08-20 17:40:52
@文星伊的老婆
for(int j=i;j>1;j--){
if(n[j]<n[j-1]){
swap(n[j],n[j-1]);
swap(m[j],m[j-1]);
}
}
}
这段代码是排序吗?
by The_Stardust @ 2018-08-20 17:43:11
如果是,你就写错了
by LCuter @ 2018-08-20 17:43:38
@文星伊的老婆 如果不能摘掉的话您的代码也会减掉力气
by LCuter @ 2018-08-20 17:43:58
@kaiming_lmk 这个排序没什么问题的吧
by The_Stardust @ 2018-08-20 17:44:44
哦,对
by The_Stardust @ 2018-08-20 17:45:00
我不太理解
by The_Stardust @ 2018-08-20 17:58:48
else if(s<0){
break;
}
}
把这里的else去了试试
by The_Stardust @ 2018-08-20 18:00:17
应该就对了
by The_Stardust @ 2018-08-20 18:00:21
@文星伊的老婆
by 文星伊的老婆 @ 2018-08-31 18:43:48
@常暗踏阴 Thanks♪(・ω・)ノ