http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=181=
题意:寻找字典中是否有匹配的词,匹配原则:单词每个字符的顺序可以不同
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
using namespace std;
const int NM=105;
int main()
{
int i=0,k;
string s1[NM],spre[NM],cs;
while(cin>>s1[i]){
if(s1[i]=="XXXXXX") break;
i++;
}
sort(s1,s1+i);
k=i;
for(i=0;i<k;i++){
spre[i]=s1[i];
sort(s1[i].begin(),s1[i].end());
}
while(cin>>cs){
if(cs=="XXXXXX") break;
sort(cs.begin(),cs.end());
bool flag=false;
for(i=0;i<k;i++){
if(s1[i].compare(cs)==0){
flag=true;
cout<<spre[i]<<endl;
}
}
if(!flag) cout<<"NOT A VALID WORD"<<endl;
cout<<"******"<<endl;
}
return 0;
}