背景

小K是一位蔚蓝教主的崇拜者(Orz教主er),有一天,他收到了一封匿名信,信告诉了小K由于他表现出色,得到了一次当面Orz教主的机会,但是要当面Orz教主可不那么容易,不是每个人都有资格Orz教主的。所以要破解下面一段密文才可以得到相关的信息,信中有提供加密的规则,但是小K觉得这个问题看似复杂,所以想请你帮忙。

描述

一个长度为n的由小写字母组成的字符串s_1~s_2~\cdots~s_n~s1​ s2​ ⋯ sn​ 按如下方式加密成3种形式:

1、将字符串翻转,即对于每一个1\le i\le n~1≤i≤n 来说,s_i~si​ 与s_{n-i+1}~sn−i+1​ 对换。

2、将字符串中每个字母变为其之后第k个字母,定义z之后的字母为a,其中0≤k≤6且为未知数。

3、将字符串中每个字母变为其之前第k个字母,定义a之前的字母为z,k同2所述。

例如字符串abcd按上面3种方式加密后,在k=1k=1的情况下会依次变为:

1、dcba;
2、bcde;
3、zabc。

现给出信中按以上3种形式分别加密后的3个字符串(不一定按上述例子的顺序),要求还原原来的字符串,并输出告诉小K。

格式

输入格式

输入的第1行为一个整数n,表示这个字符串的长度。

下面3行每行1个长度为n的字符串,且保证符合题目要求。

输出格式

输出仅包括1行,为还原后的字符串。

样例1

样例输入1

4
zabc
dcba
bcde

样例输出1

abcd

限制

对于10%的数据,输入给出加密字符串的顺序同题目中1、2、3的顺序。

对于20%的数据,n≤5; 
对于40%的数据,n≤10; 
对于60%的数据,n≤255;
对于100%的数据,n≤10000。

时限1s

模拟题

对字符串中的每位进行判断

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
bool solve(string a, string b, string c){
int n = a.length();
reverse(b.begin(),b.end());
for(int i = ; i < n; i++){
if((a[i]+c[i]-*b[i])% !=)
return false;
}
return true;
}
int main(){
int n;
string a,b,c;
cin>>n>>a>>b>>c;
if(solve(a,b,c)){
reverse(b.begin(),b.end());
cout<<b<<endl;
}
else if(solve(a,c,b)){
reverse(c.begin(),c.end());
cout<<c<<endl;
}
else{
reverse(a.begin(),a.end());
cout<<a<<endl;
}
return ;
}

vijos 1449 字符串还原的更多相关文章

  1. vijos p1449 字符串还原

    学习<algorithm>下的reverse函数 #include<iostream> #include<string> #include<algorithm ...

  2. XmlRpc.net 出参字符串还原为结构体

    上一篇随笔写的是入参结构体转字符串,现在需要把保存到服务器的字符串还原为结构体,这里记录一下操作步骤: 1. 格式化字符串. XmlRpcDeserializer 支持反序列化<struct&g ...

  3. Java,获取文件的Base64字符串,解码Base64字符串还原文件

    在jdk1.8以前,获取文件Base64字符串需要用到第三方库,从1.8开始,Java中引入了Base64相关的类 以下是代码示例 获取文件的Base64编码字符串 import java.io.Fi ...

  4. C# 把对象序列化 JSON 字符串 和把JSON字符串还原为对象

    /// <summary> /// 把对象序列化 JSON 字符串 /// </summary> /// <typeparam name="T"> ...

  5. 【拓扑 字符串还原 + 线段树维护】奇洛金卡达(father)

    奇洛金卡达(father) Description 阿良良木历将要迎来人生(不,是吸血鬼生涯)的第三次战斗——与身为人类的奇洛金卡达在直江津高中的操场solo,以取回Heartunderblade 的 ...

  6. python 将base64字符串还原为图片

    今天弄验证码的时候发现,验证码的图片的src竟然是下面的这么一个一串字符串,吓到,好像不可以http请求的,第一次见,就好尴尬,去网上搜索了一下,说是: 这是Data URI scheme. data ...

  7. .NET将图片Base64字符串还原为图片(jpg格式)并保存到本地

    1. 了解Base64字符串的形式是:data:image/jpeg;base64,字符串 2 .Base64字符串转换为图片的代码实现: string[] str = base64Str.Split ...

  8. vijos 1379 字符串的展开

    23333333333333333 #include<iostream> #include<cstdio> #include<cstring> #include&l ...

  9. python 将base64字符串还原成图片保存

    import os,base64 strs='''/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCI ...

随机推荐

  1. LIS 问题

    #include<cstdio> #include<iostream> #include<algorithm> #include<queue> #inc ...

  2. php启动后netstat看不到9000端口的问题

    https://www.cnblogs.com/jonsea/p/5522018.html     php-fpm配置文件详解 其实就是PHP配置文件改一个参数 listen = 127.0.0.1: ...

  3. redis中间件

    redis的集群:集群策略:主从复制(从库从主库同步获取数据,本身不提供服务)哨兵(监控主库和从库,当主库挂的时候自动把从库选一个切换为主库,主库存放的是全量数据)集群参考:https://blog. ...

  4. hdu6582

    题意:给定一个无向图,删除某些边有一定的代价,要求删掉使得最短路径减小,求最小代价. 分析:首先要spfa求出起点到各个点的最短距离.对于一条权值为w,起点为i,终点为j的边,设dis[k]为起点到k ...

  5. Angular开发者指南(六)作用域

    什么是作用域? 作用域是引用应用程序模型的对象. 它是表达式的执行上下文. 作用域以层次结构排列,模仿应用程序的DOM结构,它可以观察表达式和传播事件. 作用域的特征 Scope提供API($watc ...

  6. MOOC(6)- case之间存在依赖

    方法1:这里只给出根据依赖字段去匹配响应结果中的值的函数,其他匹配依赖case,对依赖case发起请求见下面的方法2 方法2: from day_20200208_mooc.tools.do_exce ...

  7. spring的事务,详解@Transactional

    事务管理是应用系统开发中必不可少的一部分.Spring 为事务管理提供了丰富的功能支持. Spring 事务管理分为编程式和声明式的两种方式. 编程式事务指的是通过编码方式实现事务,编程式事务管理使用 ...

  8. QT .和::和:和->

    在学习C++的过程中我们经常会用到.和::和:和->,在此整理一下这些常用符号的区别.1.A.B则A为对象或者结构体2.A->B则A为指针,->是成员提取,A->B是提取A中的 ...

  9. miracle|

    N-COUNT 奇迹;出人意料的事If you say that a good event is a miracle, you mean that it is very surprising and ...

  10. .js——alert()语句

    在.js文件中,通过alert()语句可以生成弹出框,弹出框中的内容message部分可以是常量字符串,也可以是含有变量的字符串连接,下面举几个例子简要说明下: 1. 参数为常量字符串 alert(& ...