社区讨论
75分求调
P1012[NOIP 1998 提高组] 拼数参与者 3已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mhjh5l6f
- 此快照首次捕获于
- 2025/11/04 02:29 4 个月前
- 此快照最后确认于
- 2025/11/04 02:29 4 个月前
CPP
#include <bits/stdc++.h>
using namespace std;
bool cmp (string s){
int a;
a = s.find('0');
if (a != -1){
return true;
}
else
return false;
}
int main() {
int n;
cin >> n;
string arr[n] = {"0"};
for (int i = 0; i < n; i++)
cin >> arr[i];
for (int i = 0; i < n; i++){
for (int j = i + 1; j < n; j++){
if (cmp(arr[i]) != cmp(arr[j])){
if (cmp(arr[i]))
if (arr[i].substr(0, arr[i].find('0')) <= arr[j])
swap(arr[i], arr[j]);
else
break;
else
if (arr[j].substr(0, arr[j].find('0')) <= arr[i])
break;
else
swap(arr[i], arr[j]);
}
else{
if (arr[i] < arr[j])
swap(arr[i], arr[j]);
}
}
}
for (int i = 0; i < n; i++)
cout << arr[i];
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...