记录编号 |
387968 |
评测结果 |
AAAAAAAAAA |
题目名称 |
Encrypt |
最终得分 |
100 |
用户昵称 |
JustWB |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2017-03-28 08:08:38 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char cz[7],wb[26];
void A()
{
int j=0,str=strlen(wb)-1;
char lin;
while(j<str)
{
lin=wb[j];
wb[j]=wb[str];
wb[str]=lin;
j++;str--;
}
}
void C()
{
char lin=wb[strlen(wb)-1];
for(int j=strlen(wb)-2;j>=0;j--)
{
wb[j+1]=wb[j];
if(j==0)wb[j]=lin;
}
}
void E()
{
char lin;
if(strlen(wb)%2==1)
{
int j=0,str=strlen(wb)/2+1;
while(j<strlen(wb)/2)
{
lin=wb[str];
wb[str]=wb[j];
wb[j]=lin;
j++;str++;
}
}
else
{
int j=0,str=strlen(wb)/2;
while(j<=strlen(wb)/2-1)
{
lin=wb[str];
wb[str]=wb[j];
wb[j]=lin;
j++;str++;
}
}
}
void J()
{
char lin=wb[0];
for(int j=1;j<strlen(wb);j++)
{
wb[j-1]=wb[j];
if(j+1==strlen(wb))wb[j]=lin;
}
}
void M()
{
for(int j=0;j<strlen(wb);j++)
{
if(wb[j]=='9')
{
wb[j]='0';continue;
}
if(48<=wb[j]&&wb[j]<57)
{
wb[j]++;
}
}
}
void P()
{
for(int j=0;j<strlen(wb);j++)
{
if(wb[j]=='0')
{
wb[j]='9';continue;
}
if(48<wb[j]&&wb[j]<=57)
{
wb[j]--;
}
}
}
int main()
{
freopen("encrypta.in","r",stdin);
freopen("encrypta.out","w",stdout);
cin>>cz>>wb;
for(int i=strlen(cz)-1;i>=0;i--)
{
if(cz[i]=='A')A();
if(cz[i]=='C')J();
if(cz[i]=='E')E();
if(cz[i]=='J')C();
if(cz[i]=='M')M();
if(cz[i]=='P')P();
}
cout<<wb;
return 0;
}