Shuffle'm Up---poj3087
题意:有两个字符串s1,s2;经过交叉问是否得到字符串s,不能输出-1,能就输出交叉的次数
每次重组的串都是s2开始,重新组合时,前面一半是s1,后一半s2;
#include<stdio.h>
#include<vector>
#include<iostream>
#include<string.h>
#include<algorithm>
#include<map>
#define N 250
using namespace std; int main()
{
int T, t=, n, ans, j;
scanf("%d", &T);
while(T--)
{
char s1[N]={}, s2[N]={}, s[N]={}, str[N]={};//记得初始化;
map<string,int>maps;//个人理解为字符串的值;
int flag = ;
scanf("%d", &n);
scanf("%s%s%s", s1, s2, s);
ans = ;
while()
{
ans++;
j=;
for(int i=; i<n; i++)
{
str[j++] = s2[i];
str[j++] = s1[i];
}
s[j]='\0';
if(strcmp(str, s)==)break;
if(maps[str]==){flag=;break;}//导致循环;
maps[str]=;//存在过; strncpy(s1, str, n);
strncpy(s2,str+n, n);//更新s1,s2;
}
if(flag==)
printf("%d -1\n", t++);
else
printf("%d %d\n", t++, ans);
}
return ;
}
Shuffle'm Up---poj3087的更多相关文章
- 洗牌Shuffle'm Up POJ-3087 模拟
		题目链接:Shuffle'm Up 题目大意 模拟纸牌的洗牌过程,已知两个牌数相等的牌堆.求解经过多少次洗牌的过程,使牌的顺序与目标顺序相同. 思路 直接模拟,主要是字符串的操作.问题是,如何判断出不 ... 
- poj3087  Shuffle'm Up(模拟)
		Shuffle'm Up Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10766 Accepted: 4976 Des ... 
- POJ3087:Shuffle'm Up(模拟)
		http://poj.org/problem?id=3087 Description A common pastime for poker players at a poker table is to ... 
- POJ-3087 Shuffle'm Up (模拟)
		Description A common pastime for poker players at a poker table is to shuffle stacks of chips. Shuff ... 
- POJ3087 Shuffle'm Up —— 打表找规律 / map判重
		题目链接:http://poj.org/problem?id=3087 Shuffle'm Up Time Limit: 1000MS Memory Limit: 65536K Total Sub ... 
- poj3087 Shuffle'm Up
		Description A common pastime for poker players at a poker table is to shuffle stacks of chips. Shuff ... 
- POJ3087 Shuffle'm Up  简单模拟
		题意:就是给你两副扑克,然后一张盖一张洗牌,不断重复这个过程,看能不能达到目标的扑克顺序 分析:然后就模拟下,-1的情况就是有循环节 #include<cstdio> #include&l ... 
- POJ3087 Shuffle'm Up(模拟)
		题目链接. AC代码如下; #include <iostream> #include <cstdio> #include <cstring> #include &l ... 
- poj3087 Shuffle'm Up(bfs)
		http://poj.org/problem?id=3087 注意复制字符串的时候,要在末尾加上'\0',否则导致strcmp出错. 还有就是开数组大小的时候看清楚一点,别开错了debug了好久. # ... 
- POJ3087 Shuffle'm Up
		题目: 现有字符串s1.s2.s12,其中s1.s2的长度为len,s12的长度为2*len. 是否可以通过一些操作使s1和s2转换合并成s12? 变换的操作规则如下: 假设s1=11111,s2=0 ... 
随机推荐
- Memcache未授权访问漏洞
			Memcached 分布式缓存系统,默认的 11211 端口不需要密码即可访问,黑客直接访问即可获取数据库中所有信息,造成严重的信息泄露. 0X00 Memcache安装 1. 下载Mencache的 ... 
- Mysql Bypass小结
			总结一些Bypass的方法, 1. 绕过空格过滤,使用注释/**/来替换 绕过安全狗简单的两个方法: /*'+'*/ /**a*/ 2.使用大小写绕过某些关键字的过滤 SeLeCT * From te ... 
- 使用 Selenium
			Selenium 简介 Selenium 基本用法 Selenium 查找节点 Selenium 节点交互 Selenium 动作链 Selenium 执行 JavaScript Selenium 获 ... 
- java上传并压缩图片(等比例压缩或者原尺寸压缩)
			本文转载自http://www.voidcn.com/article/p-npjxrbxr-kd.html 先看效果: 原图:1.33M 处理后:27.4kb 关键代码; package codeGe ... 
- Linux 排错 误删 /etc/fstab 和 /boot怎样恢复
			实验:在分区情况下,rm -rf /boot和/etc/fstab,恢复 首先我们查看一下/etc/fstab 里面放的是什么东西,从下图可以看出里面存放的是分区的挂载情况,删除分区将不能自动挂载 接 ... 
- 【接口安全】接口合法性验证加密验签SIGN 签名规则
			在对接API接口时,接口地址和参数结构都很容易被黑客抓包,从而模拟发送请求. 考虑到安全性,防止别人冒名调用,要对接口请求进行合法性验证. 基本原理如下 双方约定 APPID:参与签名和网络传输 AP ... 
- 【技术分享会】 @第六期 iOS开发基础
			前言 iOS之前被称为 iPhone OS,是一个由苹果公司开发的移动操作系统. iOS的第一个版本是在2007年发布的,其中包括iPhone和iPod Touch. iOS开发工具:Xcode 运行 ... 
- C#TreeView节点选中后失去焦点时改变节点背景色
			C#TreeView节点选中后失去焦点时改变节点背景色 在使用TreeView控件时候,单击一个节点,当鼠标聚焦到别的地方的时候,之前点击的这个节点就看不清楚了 举例截图 单击后 ... 
- What you should know about .so files
			In its early days, the Android OS was pretty much supporting only one CPU architecture: ARMv5.Do you ... 
- Linux下进程隐藏的方法及其对抗
			零.背景 在应急响应中,经常碰到ps命令和top命令查不到恶意进程(异常进程)的情况,会对应急响应造成很大的影响.轻则浪费时间,重则排查不出问题,让黑客逍遥法外.所以这篇博客研究学习如何对抗linux ... 
