judgejudge @ 2019-06-02 11:08:11
#include <iostream>
#include <string>
using namespace std;
string st[1001];
int main(){
int i,j,k,n,m;
cin>>n>>m;
for(i=1;i<=n;i++)cin>>st[i];
for(i=1;i<=m;i++){
int l;
string ss,ans=".";
cin>>l>>ss;
for(j=1;j<=n;j++){
k=st[j].find(ss);
if(k==st[j].length()-l&&k>=0&&k<st[j].length()){
if(ans==".")ans=st[j];
else{
if(ans.length()>st[j].length())ans=st[j];
else if(ans.length()==st[j].length()&&ans>st[j])ans=st[j];
}
}
}
if(ans==".")cout<<-1<<endl;
else cout<<ans<<endl;
}
return 0;
}
by 固执 @ 2019-06-07 09:02:57
把ans换成bool类型的0和1,这样可读性大一点
by 固执 @ 2019-06-07 09:03:26
我觉得完全可以不用字符串来处理