标签:auto image main http its aes define name ogr
题意:
- 凯撒密码加密,输出对应的密文的明文
思路:
- 加密是将明文向右移位,那么解密就是将密文向左移位。
注意:A向左一位是Z
#include<bits/stdc++.h>
#define ll long long
using namespace std;
char s[55],str[55];
int n,m;
int main( )
{
int t,q=0;
scanf("%d",&t);
while(t--)
{
q++;
scanf("%d%d",&n,&m);
getchar( );
scanf("%s",s);
getchar( );
scanf("%s",str);
int k=str[0]-s[0];//获得密钥
getchar( );
scanf("%s",str);
cout<<"Case #"<<q<<": ";
for(int i=0;i<m;i++)
{
int cnt=(str[i]-‘A‘-k+26)%26+‘A‘;//将字符按0~25移位,移位后加上字符‘A‘
cout<<(char)cnt;
}
cout<<endl;
}
return 0;
}
标签:auto image main http its aes define name ogr
原文地址:https://www.cnblogs.com/lcbwwy/p/13125135.html