UVA - 10391 Compound Words

https://vjudge.net/problem/UVA-10391

相似题:https://vjudge.net/problem/HDU-1247
(直接用这一题的代码就能过,同时可以把set换成unordered_set)

用uordered_map的话输出字典序不对
样例输入之后 要先输入文件结束符才能出结果

#include<iostream>
#include<algorithm>
#include<unordered_set>
#include<set>
using namespace std;
int main()
{
	string s;
	set<string> q;
	while(cin>>s)
		q.insert(s);
		
	string t1,t2;
	for(auto s:q)
	{
		int n=s.size();
		for(int i=0;i<n;i++)
		{
			t1=s.substr(0,i+1);
			t2=s.substr(i+1,n-1);
			if(q.find(t1)!=q.end() && q.find(t2)!=q.end())
			{
				cout<<s<<"\n";
				break;
			}
		}
	}
	return 0;
}
posted @ 2021-08-22 12:27  斯文~  阅读(26)  评论(0)    收藏  举报

你好!