405J1R第七次训练(T635910 单词前缀)
pico_fence · · 个人记录
错误思路
看不懂题。
正确思路
先来个const int N=1e5+5;然后来个整数变量n,再来个string s[N],k;然后输入n,来个for循环:
for(int i=1;i<=n;i++){
cin>>s[i];
}
再来个sort排序,然后输入k,再来个for循环:
for(int i=1;i<=n;i++){
if(s[i].find(k)==0){
cout<<s[i]<<endl;
}
}
正确代码
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int n;
string s[N],k;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>s[i];
}
sort(s+1,s+1+n);
cin>>k;
for(int i=1;i<=n;i++){
if(s[i].find(k)==0){
cout<<s[i]<<endl;
}
}
return 0;
}