洛谷 P1703 那个什么密码2
生活随笔
收集整理的这篇文章主要介绍了
洛谷 P1703 那个什么密码2
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
P1703 那个什么密码2
题目背景
https://www.luogu.org/problem/show?pid=1079
题目描述
与原题一模一样、具体不同请见输入格式
输入输出格式
输入格式:
第一行输入密钥
第二行输入明文
第三行输入一个正整数M,代表操作个数.
每个操作将[a,b]的字符全部倒转,比如abc倒转为cba.
接下来M行,每行输入两个正整数a,b。
输出格式:
输出一行,输出密文。
输入输出样例
输入样例#1: 复制 CompleteVictory Wherethereisawillthereisaway 0 输出样例#1: 复制 Yvqgpxaimmklongnzfwpvxmniytm说明
由zxy大神原创、本人在洛谷上传。
思路:模拟。
吐槽:出题人的语文绝对不及格!!!!!(╯‵□′)╯︵┻━┻ 题目描述一点都不清楚。
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; string s,k; int n,miyao[5010]; int main(){cin>>k>>s;int len=k.length();for(int i=0;i<len;i++)for(int j=i;j<5010;j+=len){if(k[i]>='A'&&k[i]<='Z') miyao[j]=(int)(k[i]-'A');else miyao[j]=(int)(k[i]-'a'); }len=s.length();for(int i=0;i<len;i++){if(s[i]>='A'&&s[i]<='Z'){if(s[i]+miyao[i]>'Z') s[i]=s[i]+miyao[i]-26;else s[i]=s[i]+miyao[i];}else{if(s[i]+miyao[i]>'z') s[i]=s[i]+miyao[i]-26;else s[i]=s[i]+miyao[i];}}scanf("%d",&n);while(n--){int a,b;scanf("%d%d",&a,&b);string t1=s.substr(0,a-1);string t2=s.substr(a-1,b-a+1);string t3=s.substr(b,s.length()-b);reverse(t2.begin(),t2.end());s=t1+t2+t3;}cout<<s<<endl; }
转载于:https://www.cnblogs.com/cangT-Tlan/p/8034865.html
总结
以上是生活随笔为你收集整理的洛谷 P1703 那个什么密码2的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 腾讯云 视频 点播 视频上传接口
- 下一篇: HDU2029:Palindromes