Anagrams by Stack--zju
来源:互联网 发布:怎么在mac上下载webex 编辑:程序博客网 时间:2024/05/22 12:03
Sample Input
madam
adamm
bahama
bahama
long
short
eric
rice
Sample Output
[
i i i i o o o i o o
i i i i o o o o i o
i i o i o i o i o o
i i o i o i o o i o
]
[
i o i i i o o i i o o o
i o i i i o o o i o i o
i o i o i o i i i o o o
i o i o i o i o i o i o
]
[
]
[
i i o i o i o o
]
#include<iostream> #include<string>#include<stack>#include<vector>using namespace std; string s,t;stack<char> st;vector<char> v;//分析只有两种情况:1.入栈 2.如果匹配就可以弹出bool IsVaild(){if(s.size()!=t.size())return false;int s_cnt[26],t_cnt[26];fill(s_cnt,s_cnt+26,0);fill(t_cnt,t_cnt+26,0);int i;for(i=0;i<s.size();i++){s_cnt[s[i]-'a']++;t_cnt[t[i]-'a']++;}for(i=0;i<s.size();i++){if(s_cnt[i]!=t_cnt[i])return false;}return true;}void solve(int s_i,int t_i){if(s_i==s.size() && t_i==t.size() && v.size()==t.size()+t.size()){for(int i=0;i<v.size();i++){//if(i==0)cout<<v[i]<<" ";//else//cout<<" "<<v[i];}cout<<endl;//注意这里不需要qinko}if(s_i!=s.size()){v.push_back('i');st.push(s[s_i]);solve(s_i+1,t_i);st.pop();v.pop_back();}if(st.empty()!=true){if(st.top()==t[t_i]) //如果stack栈顶和t中的index一样,可以弹出{v.push_back('o');char t=st.top();st.pop();solve(s_i,t_i+1);v.pop_back();st.push(t);}}}int main(){while(cin>>s>>t){v.clear();cout<<"["<<endl;if(IsVaild()){solve(0,0);}cout<<"]"<<endl;}return 0;}
- Anagrams by Stack--zju
- ZJU 1004 Anagrams by Stack
- Anagrams by Stack
- Anagrams by Stack
- zoj1004 Anagrams by Stack
- Anagrams by Stack
- Anagrams by Stack dfs
- ZOJ1004 Anagrams by Stack
- Anagrams by Stack
- ZOJ1004 Anagrams by Stack
- Anagrams by Stack python
- Anagrams by Stack
- ZOJ1004-Anagrams by Stack
- Anagrams by Stack
- ZOJ1004-Anagrams by Stack
- zoj1004-Anagrams by Stack
- zoj_1004-Anagrams by stack
- zoj1004 Anagrams by Stack
- 1008-Gnome Tetravex -zju
- 使用Runtime.getRuntime().exec()的方法调用本地mysqldump.exe备份还原数据库(路径中含有空格和数字)的方法
- IPv6地址表达方式、寻址模型和地址空间
- 1005 Jugs-zju
- SEO优化(1)
- Anagrams by Stack--zju
- PHP+FLASH实现上传文件进度条
- Sql Server中Convert函数小结
- Shell编程简单实现四则运算
- 测量网络的MTU值
- 图片处理收集
- hash函数的学习及应用实例
- SpringMVC(2.5)_使用
- Fire Net