欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

洛谷 P1703 那个什么密码2

发布时间:2025/3/21 编程问答 33 豆豆
生活随笔 收集整理的这篇文章主要介绍了 洛谷 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的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。