网易游戏笔试题
2015-09-21 07:32
288 查看
该题目的要求是判断str1和str2能否归并成为str3,递归的思路是正确的 boolhelper(string&str_x,string&str_y,intx,inty){ while(x<str_x.size()&&y<str_y.size()){ if(str_x[x]==str_y[y]){ ++x; ++y; } else{ returnfalse; } } if(x==str_x.size()&&y==str_y.size()) returntrue; else returnfalse; } boolhelper(string&str1,string&str2,string&str3,intm,intn,intk){ if(m==str1.size()){ returnhelper(str2,str3,n,k); } elseif(n==str2.size()){ returnhelper(str1,str3,m,k); } elseif(k==str3.size()){ returnfalse; } else{ if(str1[m]==str3[k]&&str2 !=str3[k]) returnhelper(str1,str2,str3,m+1,n,k+1); elseif(str1[m]!=str3[k]&&str2 ==str3[k]) returnhelper(str1,str2,str3,m,n+1,k+1); else returnhelper(str1,str2,str3,m+1,n,k+1)||helper(str1,str2,str3,m,n+1,k+1); } } intmain(){ intnums; cin>>nums; stringstr1,str2,str3; for(inti=0;i<nums;++i){ cin>>str1>>str2>>str3; intm=0,n=0,k=0;//m,n分别指向str1和str2的第0个元素 cout<<helper(str1,str2,str3,0,0,0)<<endl; } return0; } 下面附上原来的错误代码
intmain(){//str1:bcfstr2:acdestr3:abcdcef intnums; cin>>nums; stringstr1,str2,str3; for(inti=0;i<nums;++i){ cin>>str1>>str2>>str3; intm=0,n=0,k=0;//m,n分别指向str1和str2的第0个元素 boolflag=true; while(m<str1.size()&&n<str2.size()&&k<str3.size()){ if(str1[m]==str3[k]){ ++m; ++k; } elseif(str2 ==str3[k]){ ++n; ++k; } else{ flag=false; break; } } while(m<str1.size()&&k<str3.size()){ if(str1[m]==str3[k]){ ++m; ++k; } else{ flag=false; break; } } while(n<str2.size()&&k<str3.size()){ if(str2 ==str3[k]){ ++n; ++k; } else{ flag=false; break; } } if(m==str1.size()&&n==str2.size()&&k==str3.size()) cout<<flag<<endl; else cout<<0<<endl; } return0; }
相关文章推荐
- 《计算机操作系统》总结二(进程与线程)
- JAVA向EXE文件尾追加配置信息,用于解决局版客户端的程序IP配置问题
- try---catch--finally,finally是否一定执行?
- 代码添加viewpager解决Viewpager适配问题
- Best Time to Buy and Sell Stock III 解答
- 122 Best Time to Buy and Sell Stock II [Leetcode]
- 项目进度估算难题
- 121 Best Time to Buy and Sell Stock [Leetcode]
- Android 动画——Layout Animations布局动画
- LeetCode Generate Parentheses
- 品牌为什么爱推定制机
- session的存储方式和配置
- Linux服务管理之httpd-2.4常用配置及phpMyAdmin的安装配置
- ASP.NET页面之间传递值的几种方式
- 读《大道至简—编程的精义》有感
- 数据结构-线性表链式表示
- 《大道至简》第一章读后感
- 当前项目中,linux下memcached的启动/结束的方式
- CUDPP基本执行过程分析
- viewpager不显示