0
已解决
刘意阳
初级天翼
初级天翼
哪位大神可以解释一下6936这题哪里错了?
#include <iostream>
#include <algorithm>
using namespace std;
struct Q{
long long w,c;
}a[500005];
int n;
unsigned long long s;
bool cmp(Q a,Q b){
return a.c+a.w>b.c+b.w;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].w>>a[i].c;
s+=a[i].w;
}
sort(a+1,a+n+1,cmp);
cout<<s-a[1].w-a[1].c;
return 0;
}
刘意阳在2022-11-16 16:27:43追加了内容
1
刘意阳在2022-11-18 18:29:31追加了内容
#include <iostream>
#include <algorithm>
using namespace std;
struct Q{
long long w,c;
}a[500005];
int n;
unsigned long long ans=0x7fffffffffffffff,sum;
bool cmp(Q a,Q b){
return a.c+a.w>b.c+b.w;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].w>>a[i].c;
}
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++){
sum=0;
for(int j=i+1;j<=n;j++){
sum+=a[j].w;
}
sum-=a[i].c;
ans=min(ans,sum);
}
cout<<ans;
return 0;
}
本蒟蒻有做出来了WA0分代码!求大佬指导。
0
0
0
0
0
0
熊潇然
初级启示者
初级启示者
输入和排序正确√
定义ans=0
遍历1~n
定义sum=0
遍历i+1~n,sum加上s[j].w
sum减去s[i].c
ans和sum取最小值赋值给ans
}
输出ans
不会的问我
0