社区讨论
对于一些语句的不理解
P1090[NOIP 2004 提高组] 合并果子参与者 9已保存回复 23
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 23 条
- 当前快照
- 1 份
- 快照标识符
- @lo8q6xpq
- 此快照首次捕获于
- 2023/10/27 22:45 2 年前
- 此快照最后确认于
- 2023/10/27 22:45 2 年前
rt,深基的思路看明白了,但是有几行代码没有明白。
CPP#include <bits/stdc++.h>
using namespace std;
int n,sz,a1[100010],a2[10010],sum;
int main() {
cin>>n;
memset(a1,127,sizeof (a1));
memset(a2,127,sizeof (a2));
for (int i = 0; i < n; ++i) {
cin>>a1[i];
}
sort(a1,a1+n);
int i=0,j=0,w;
for (int k = 1; k <n; ++k) {
w=a1[i]<a2[j]?a1[i++]:a2[j++];
w+=a1[i]<a2[j]?a1[i++]:a2[j++];
a2[sz++]=w;
sum+=w;
}
cout<<sum;
return 0;
}
1.为什么要初始化成1?
w=a1[i]<a2[j]?a1[i++]:a2[j++];
w+=a1[i]<a2[j]?a1[i++]:a2[j++];
这两行的?与:作用是什么?
谢谢您们
回复
共 23 条回复,欢迎继续交流。
正在加载回复...