专栏文章
题解:AT_abc396_c [ABC396C] Buy Balls
AT_abc396_c题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mipxjem3
- 此快照首次捕获于
- 2025/12/03 19:34 3 个月前
- 此快照最后确认于
- 2025/12/03 19:34 3 个月前
思路:
这题感觉比 D 题难,因为 D 会更模板一点。
这题要使用贪心做法。首先要读入两个数组 和 ,然后升序排列两个数组。接下来,如果 且 ,那么把答案加上 ,并把 和 都减 。最后把 中还未统计过的数加入答案就行了。
代码:
CPP#import<bits/stdc++.h>
#define int long long
using namespace std;
int n,m,a[200005],b[200005],ans;
main(){
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
cin>>n>>m;
for(int i=1;i<=n;++i) cin>>a[i];
for(int i=1;i<=m;++i) cin>>b[i];
sort(a+1,a+n+1);
sort(b+1,b+m+1);
while(n && a[n]+b[m]>0 && b[m]>0) ans+=a[n]+b[m],--n,--m;
while(n && a[n]>0) ans+=a[n],--n;
cout<<ans;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...