poj 2041 Unreliable Message 字符串处理
水的问题。直接附着到代码。
//poj 2041
//sep9
#include <iostream>
using namespace std;
char mode[128];
char ori[128],res[128];
int len;
void J()
{
ori[0]=res[len-1];
for(int i=1;i<len;++i)
ori[i]=res[i-1];
}
void C()
{
ori[len-1]=res[0];
for(int i=0;i<len-1;++i)
ori[i]=res[i+1];
}
void E()
{
int i;
for(i=0;i<len/2;++i)
ori[i]=res[i+(len+1)/2];
if(len%2==1)
ori[len/2]=res[len/2];
for(i=(len+1)/2;i<len;++i)
ori[i]=res[i-(len+1)/2];
}
void A()
{
for(int i=0;i<len;++i)
ori[i]=res[len-1-i];
}
void P()
{
for(int i=0;i<len;++i)
if(res[i]<='9'&&res[i]>='0')
ori[i]=res[i]=='0'? '9':res[i]-1;
else
ori[i]=res[i];
}
void M()
{
for(int i=0;i<len;++i)
if(res[i]<='9'&&res[i]>='0')
ori[i]=res[i]=='9'?'0':res[i]+1;
else
ori[i]=res[i];
}
int main()
{
int i,n;
scanf("%d",&n);
while(n--){
scanf("%s%s",mode,res);
len=strlen(res);
ori[len]='\0';
for(i=strlen(mode)-1;i>=0;--i){
if(mode[i]=='J')
J();
else if(mode[i]=='C')
C();
else if(mode[i]=='E')
E();
else if(mode[i]=='A')
A();
else if(mode[i]=='P')
P();
else if(mode[i]=='M')
M();
strcpy(res,ori);
}
printf("%s\n",res);
}
return 0;
}
poj 2041 Unreliable Message 字符串处理的更多相关文章
- POJ 2041 Unreliable Message
简单模拟.依照题意处理一下字符串就可以. 应该是写题号写错了,本来我在VirtualJudge是加入的POJ 并查集与生成树的题. #include<cstdio> #include< ...
- POJ 1035 Spell checker 字符串 难度:0
题目 http://poj.org/problem?id=1035 题意 字典匹配,单词表共有1e4个单词,单词长度小于15,需要对最多50个单词进行匹配.在匹配时,如果直接匹配可以找到待匹配串,则直 ...
- POJ 1200 Crazy Search(字符串简单的hash)
题目:http://poj.org/problem?id=1200 最近看了一个关于hash的问题,不是很明白,于是乎就找了些关于这方面的题目,这道题是一道简单的hash 字符串题目,就先从他入手吧. ...
- poj 1146 ID Codes (字符串处理 生成排列组合 生成当前串的下一个字典序排列 【*模板】 )
ID Codes Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 6229 Accepted: 3737 Descript ...
- POJ 3080 Blue Jeans (字符串处理暴力枚举)
Blue Jeans Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 21078 Accepted: ...
- poj 2752 求一个字符串所有的相同前后缀
求一个字符串所有的相同前后缀Sample Input ababcababababcababaaaaaSample Output 2 4 9 181 2 3 4 5 #include <iostr ...
- POJ2274 Long Long Message 字符串
正解:SA/哈希+二分 解题报告: 传送门! 啊先放下翻译,,,?大意就有两个字符串,求这两个字符串的最长公共子串 先港SA的做法趴 就把两个子串拼接起来,然后题目就变成了求后缀的最长公共前缀了 所以 ...
- node.js 监听message事件 message字符串丢失信息
const dgram = require("dgram"); const server = dgram.createSocket("udp4"); serve ...
- poj 1035 Spell checker ( 字符串处理 )
Spell checker Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 16675 Accepted: 6087 De ...
随机推荐
- 前端笔试题目小结--获取输入参数用户名;查询URL字符串参数
编写一个JavaScript函数getSuffix,用于获得输入参数的后缀名.如输入abc.txt,返回txt. str1 = "abc.txt"; function getSuf ...
- 《第一行代码》学习笔记37-服务Service(4)
一个比较完整的自定义AsyncTask写成如下: class DownloadTask extends AsyncTask<Void, Integer, Boolean> { @Overr ...
- IActiveView 接口 - 浅谈
IActiveView 和 IMap以其 Map, PageLayout之间的关系. 在ArcMap中, PageLayout 和 Map分别对应不同的视图: layout 和data view.在同 ...
- myFocus焦点图插件
注意 1.焦点图初始化ID和图片最外层ID保持一致 2.图片列表外面必须包裹一个div,且id必须为pic http://demo.jb51.net/js/myfocus/tutorials.html ...
- 常用mysql笔记
1.insert into ... values insert into tables (col1,col2) values (1,2),(2,3); 2.insert into ... select ...
- C#Mysql数据库爆破源码
声明: 代码仅供学习参考使用!开启了一个子线程,进行爆破! 速度不是很快,代码不是很规范,希望大牛不要喷我! c#控制台程序,需要引用MySql.Data.dll 默认用户名: root密码字典: p ...
- 编译protobuf-2.5.0中的错误处理
最近在编译protobuf-2.5.0源码的时候发现的错误已经应对方法 1. 在源码目录执行 ./configure 命令的时候,发生如下错误 error: C++ preprocessor &quo ...
- Membership添加验证码登录
1.在公共类ImageHelper中编写公共方法,产生随机验证码 /// <summary> /// 产生随机验证码 /// </summary> /// <return ...
- 未能在全局命名空间中找到类型或命名空间名称“Wuqi”
下载了AspNetPager控件用以进行分页操作,在项目中放入控件后,运行报错:未能在全局命名空间中找到类型或命名空间名称“Wuqi” . 解决办法:在项目下拉框“引用“中添加AspNetPager引 ...
- awk的日志模块追加日期时间字段的方案
function test() { i = ) { system("sleep 1") "date +'%Y-%m-%d %H:%M:%S'" | getlin ...