在此处键入或粘贴代码
```#include<bits/stdc++.h>
using namespace std;
int a=-1e9,b=-1e9,n;
struct node{
int w,s;
}x[50010];
int cmp(node x,node y){
return x.w>y.w;
}
int k(node x,node y){
return x.s>y.s;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>x[i].w>>x[i].s;
sort(a+1,a+n+1,cmp);
int sum=0;
for(int i=n;i>=1;i--){
a=max(a,sum-x[i].s);
sum+=x[i].w;
}sort(a+1,a+n+1,k);
sum=0;
for(int i=n;i>=1;i--){
a=max(a,sum-x[i].s);
sum+=x[i].w;
}if(a<b)cout<<a;else cout<<b;
return 0;
}为什么编译错误
4 个赞
a是个变量为啥能sort
3 个赞
#include<bits/stdc++.h>
using namespace std;
int a=-1e9,b=-1e9,n;
struct node{
int w,s;
}x[50010];
int cmp(node x,node y){
return x.w>y.w;
}
int k(node x,node y){
return x.s>y.s;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>x[i].w>>x[i].s;
sort(x+1,x+n+1,cmp);
int sum=0;
for(int i=n;i>=1;i–){
a=max(a,sum-x[i].s);
sum+=x[i].w;
}sort(x+1,x+n+1,k);
sum=0;
for(int i=n;i>=1;i–){
a=max(a,sum-x[i].s);
sum+=x[i].w;
}if(a<b)cout<<a;else cout<<b;
return 0;
}0分
3 个赞
在此处键入或粘贴代码
```#include<bits/stdc++.h>
using namespace std;
int a=-1e9,b=-1e9,n;
struct node{
int w,s;
}x[50010];
int cmp(node x,node y){
return x.w>y.w;
}
int k(node x,node y){
return x.s>y.s;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>x[i].w>>x[i].s;
sort(x+1,x+n+1,cmp);
int sum=0;
for(int i=n;i>=1;i--){
a=max(a,sum-x[i].s);
sum+=x[i].w;
}sort(x+1,x+n+1,k);
sum=0;
for(int i=n;i>=1;i--){
a=max(a,sum-x[i].s);
sum+=x[i].w;
}if(a<b)cout<<a;else cout<<b;
return 0;
}0分
格式话一下
3 个赞
#include<bits/stdc++.h>
using namespace std;
struct COW{
int w,s;
}cow[100005];
bool cmp(COW a,COW b){
return a.w+a.s<b.w+b.s;//直接降序
}
signed main(){
int w,s,n,i;
cin>>n;
for(i=1;i<=n;i++){
cin>>cow[i].w>>cow[i].s;
}
sort(cow+1,cow+n+1,cmp);
int miN=0x87777777;//minnum
long long wi=0;
for(i=1;i<=n;i++){
miN=max((long long)miN,wi-cow[i].s);
wi+=cow[i].w;
}
cout<<miN;
return 0;
}
4 个赞
请勿直接发代码
3 个赞
伪代码就行,我要思路
3 个赞
对了
3 个赞