我的代码(刘汝佳算法)

#include <bits/stdc++.h>
using namespace std;
deque<string> dq1,dq2;
map<string,int> cnt;
string tran(string a)
{
	for(int i=0;i<a.size();i++)
	a[i]=tolower(a[i]);
	sort(a.begin(),a.end());
	return a;
}
main()
{
	string s;
	while(cin>>s)
	{
		if(s[0]=='#')
		break;
		string ans=tran(s);
		dq1.push_back(s);
		if(!cnt.count(ans))
		cnt[ans]=0;
		cnt[ans]++;
	}
	for(int i=0;i<dq1.size();i++)
	if(cnt[tran(dq1[i])]==1)
	dq2.push_back(dq1[i]);
	sort(dq2.begin(),dq2.end());
	for(int i=0;i<dq2.size();i++)
	cout<<dq2[i]<<endl;
}

相关文章:

  • 2022-12-23
  • 2021-12-27
  • 2022-12-23
  • 2021-06-02
  • 2022-01-26
  • 2020-02-23
  • 2021-10-29
  • 2021-11-23
猜你喜欢
  • 2021-07-17
  • 2021-08-21
  • 2022-12-23
  • 2021-06-10
  • 2022-12-23
  • 2022-03-06
  • 2021-07-02
相关资源
相似解决方案