#include #include #include #include using namespace std;cons

#include
#include
#include
#include
using namespace std;
const int MAXN = 9;
int N;
string s[MAXN];
int id[MAXN];
bool cmp(int i,int j) { // 比较函数
return s[i] + s[j] < s[j] + s[i];
}
void input() { // 输入函数
int i;
char str[109];
scanf("%d",&N); // 读入字符串数目,C style,也可以直接cin>>N;
for (i = 0; i < N; i++) {
scanf("%s",str); // 读入字符串,C style,也可以直接cin>>s[i];
s[i] = str;
id[i] = i; // 标记字符串下标,用于排序
}
}
void solve() {
int i;
sort(id,id + N,cmp); // 基于下标的排序,字符串本身不被修改
for (i = 0; i < N; i++)
printf("%s",s[id[i]].c_str()); // 输出结果,C style,也可以直接cout
mairn2004 1年前 已收到1个回答 举报

7789688 幼苗

共回答了19个问题采纳率:78.9% 举报

如果s[i] + s[j] < s[j] + s[i];则返回“1”
如果s[i] + s[j] > s[j] + s[i];则返回“0”

1年前

4
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.152 s. - webmaster@yulucn.com