题目描述
小明已学会了N个英语单词,妈妈常帮助他加强记忆:她从这N个单词中挑出一个,并将该单词中的字母顺序变乱,例如:boy变为ybo,再让小明恢复单词的原样。你能编程完成小的任务吗?
输入
输入:N(1<=N<=50)
单词1 单词2 …… 单词N(单词中字母都是小写,单词之间以一个空格分隔)
一个变乱字母顺序的单词
输出
输出:恢复的正确的单词(注:若正确单词不止一个,则每行输出一个单词)
样例输入
4 School boy student tree ybo
样例输出
boy
#include<iostream> #include<string> using namespace std; bool abc(string a,string b) { int s1=0,s2=0; for(int i=0;i<a.length();i++) { s1+=a[i]; s2+=b[i]; } if(s1==s2) return true; else return false; } int main() { int n,i; string a[51],b; cin>>n; for(i=0;i<n;i++) cin>>a[i]; cin>>b; for(i=0;i<n;i++) if(b.length()==a[i].length()) if(abc(a[i],b)) { cout<<a[i]<<endl; break; } return 0; }