[GESP202412—四级] 字符排序
2026-07-21 09:14:47
发布于:广东
19阅读
0回复
0点赞
嗨,今日份题解已出炉!
| 难度 | 复杂度 |
|---|---|
| (5/10) | (5/10) |
首先☝️,先读题:
一共要求输入t*n个字符串
所以为了方便,我们使用字符串数组
满足条件输出1,否则输出0
注意⚠️条件是假设t[i]为字符串t的第i个字符,对于所有的j<i均有t[j]<=t[i],两个字符的大小关系与其在字母表中的顺序一致,例如a<b<c<d
然后☝️,再思考
那么,请写出你的思路!
没错,我们可以使用自定义函数(也就是GESP四级知识点)去完成输入字符串进行判断!
最后😊,上代码!
#include<bits/stdc++.h>
#pragma GCC optimize(3)
using namespace std;
void f(){
string s[110]={};
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>s[i];
}
sort(s+1,s+n+1);
for(int i=1;i<=n;i++){
for(int j=0;j<s[i].size();j++){
if(j==s[i].size()-1){
if(i==n){
cout<<"1"<<"\n";
return ;
}else if(s[i][j]>s[i+1][0]){
cout<<"0"<<"\n";
return ;
}
}else if(s[i][j]>s[i][j+1]){
cout<<"0"<<"\n";
return ;
}
}
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int t;
cin>>t;
for(int i=1;i<=t;i++){
f();
}
return 0;
}
//YC:ALPHA-1红右手特遣队,请认准pragma专属防伪标
谢谢🦀🦀
这里空空如也








有帮助,赞一个