40pts求助
查看原帖
40pts求助
748287
lyc0613楼主2023/10/15 16:56
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
const int MAXN = 1e3+10;
int n,q,len;
string book[MAXN],a,b;
bool op;
bool cmp(string a,string b){
    if(a.size() != b.size()) return a.size() < b.size();
    return !strcmp(a.c_str(),b.c_str());
}
int main(){
    ios::sync_with_stdio(false);
	cin>>n>>q;
    for(int i = 1;i <= n;i++) cin>>book[i];
    sort(book+1,book+n+1,cmp);
    for(int i = 1;i <= q;i++){
        cin>>len>>a;
        op = true;
        for(int j = 1;j <= n;j++){
            b = "";
            for(int pos = book[j].size()-len;pos <= (int)book[j].size();pos++) b += book[j][pos];
            if(strcmp(a.c_str(),b.c_str()) == 0){
                cout<<book[j]<<'\n';
                op = false;
                break;
            }
        }
        if(op) cout<<-1<<'\n';
    }
    return 0;
}
2023/10/15 16:56
加载中...