博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Shuffle'm Up
阅读量:4343 次
发布时间:2019-06-07

本文共 989 字,大约阅读时间需要 3 分钟。

poj3087:

题意:题意简化之后的就是:给你两个长度均为c的字符串s1,s2,然后给你一个2*c的串ss,现在每次从s2,中取一个,然后再从s1,取出一个(都是从左往右),组成新的串,如果新的的串和ss相同,则说明s1,s2可以通过若干次洗牌,组成ss。现在就是来求这个步数,若存在,则输出,否则输出-1.

题解:直接模拟。但是要注意一个问题。就是strcmp(s1,s2)s1,s2后面要加‘\0’,我就是没有注意这个问题结果贡献了4wa。

1 #include
2 #include
3 #include
4 #include
5 #include
6 #include
7 using namespace std; 8 char s1[102],s2[102],aim[202],temp[202]; 9 int c;10 int main(){11 int t;12 scanf("%d",&t);13 for(int cas=1;cas<=t;cas++){14 map
Q;15 scanf("%d",&c);16 scanf("%s",s1);17 scanf("%s",s2);18 scanf("%s",aim);19 int counts=0;20 Q[aim]=1;bool flag=true;21 while(true){22 for(int i=0;i<=2*c-1;i+=2)23 temp[i]=s2[i/2];24 for(int i=1;i<=2*c-1;i+=2)25 temp[i]=s1[i/2];26 counts++;27 temp[2*c]='\0';28 if(strcmp(temp,aim)==0)break;29 if(Q[temp]){30 flag=false;31 break;32 }33 Q[temp]=1;34 for(int i=0;i
View Code

 

转载于:https://www.cnblogs.com/chujian123/p/3536827.html

你可能感兴趣的文章
jquery扩展 $.fn
查看>>
Markdown指南
查看>>
influxDB的安装和简单使用
查看>>
JPA框架学习
查看>>
JPA、JTA、XA相关索引
查看>>
机器分配
查看>>
php opcode缓存
查看>>
springcloud之Feign、ribbon设置超时时间和重试机制的总结
查看>>
观看杨老师(杨旭)Asp.Net Core MVC入门教程记录
查看>>
UIDynamic(物理仿真)
查看>>
Windows下安装Redis
查看>>
winform非常实用的程序退出方法!!!!!(转自博客园)
查看>>
centos安装vim
查看>>
linux工作调度(计划任务)
查看>>
两个链表的第一个公共节点
查看>>
NIO:与 Buffer 一起使用 Channel
查看>>
Android帧缓冲区(Frame Buffer)硬件抽象层(HAL)模块Gralloc的实现原理分析
查看>>
MFC接收ShellExecute多个参数
查看>>
volatile和synchronized的区别
查看>>
RocketMQ介绍与云服务器安装
查看>>