40分求助!!!
查看原帖
40分求助!!!
1244509
renzhanwen楼主2024/8/2 14:47
#include<bits/stdc++.h>
using namespace std;
int n,q;
string a[10000];
int main()
{
	cin>>n>>q;
	for(int i=1;i<=n;i++)
		cin>>a[i];
	for(int i=1;i<=n;i++)
		for(int j=2;j<=n;j++)
		{
			if(a[j-1].size()>a[j].size())
				swap(a[j-1],a[j]);
			if(a[j-1].size()==a[j].size())
				for(int y=0;y<a[j].size();y++)
					if(a[j-1][y]>a[j][y])
					{
						swap(a[j-1],a[j]);
						break;
					}
		}
	while(q--)
	{
		int k;
		string b;
		bool s=true;
		cin>>k>>b;
		for(int i=1;i<=n;i++)
		{
			if(a[i].size()<b.size())
				continue;
			s=true;
			int t=a[i].size()-1;
			for(int j=b.size()-1;j>=0;j--)
			{
				if(a[i][t]!=b[j])
				{
					s=false;
					break;
				}
				t--;
			}
			if(s==true) 
			{
				cout<<a[i];
				break;
			}
		}
		if(s==false)
			cout<<"-1";
		cout<<endl;
	}
	return 0;
}
2024/8/2 14:47
加载中...