- 字符串还原
- 2017-05-09 13:14:38 @
只对了6个点/(ㄒoㄒ)/~~
代码如下
#include <cstdio>
using namespace std;
char a[4][10005],r;
int len;
int main(){
scanf("%d",&len);
scanf("%s %s %s",a[1]+1,a[2]+1,a[3]+1);
int i,j;
bool f;
for(i=1;i<=3;i++){
for(j=1;j<=len/2;j++){
r=a[i][j];
a[i][j]=a[i][len-j+1];
a[i][len-j+1]=r;
}
int p,q;
f=1;
for(j=1;j<=3 && f;j++){
if(j==i)
continue;
p=(int)(a[i][1]-a[j][1]);
for(int u=2;u<=len;u++){
q=(int)(a[i][u]-a[j][u]);
if(q!=p && q!=p+26 && q!=p-26){
f=0;
break;
}
}
}
if(f){
printf("%s\n",a[i]+1);
return 0;
}
for(j=1;j<=len/2;j++){
r=a[i][j];
a[i][j]=a[i][len-j+1];
a[i][len-j+1]=r;
}
}
return 0;
}