模拟只会猜题意 “东信杯”广西大学第一届程序设计竞赛(同步赛)
链接:https://ac.nowcoder.com/acm/contest/283/C
来源:牛客网
题解:简单模拟,情况较多,把所有条件写全写对,即可。水题一道,我是来混分的qwq
代码:
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
bool pan(string str){
int len=str.size();
for(int i=0;i<=(str.size()-1)/2;i++){
if(str[i]!=str[len-1-i])
return false;
}
return true;
}
int main(){
/*int a=abs('a'-'b')<0;
cout<<a<<endl;*/
int t;
cin>>t;
while(t--){
int len;
cin>>len;
string str;
cin>>str;
int flag=0;
if(len%2){
if(pan(str))
cout<<1<<endl;
else
cout<<0<<endl;
continue;
}
else{
for(int i=0;i<=(str.size()-1)/2;i++){
if((str[i]>='a'&&str[i]<='z'&&str[str.size()-1-i]>='a'&&str[str.size()-1-i]<='z')&&((abs(str[i]-str[str.size()-1-i])==2)||(abs(str[i]-str[str.size()-1-i])==0))){
continue;
}
else{
if(str[i]!=str[len-1-i]){
flag=1;
break;
}
}
}
if(flag)
cout<<0<<endl;
else
cout<<1<<endl;
}
}
return 0;
}
题目描述
小西突然觉得回文串是一种非常优雅的东西,她突然想要把身边所有的字符串都变成回文!
所谓回文串就是一个倒置后仍与自身相等的字符串,如“gxuacmmcauxg”和“gxuacmcauxg”。
小西不喜欢单身狗,所以小西只会处理长度为偶数的字符串。
小西也不喜欢肥宅,所以小西处理的字符串只有小写英文字母。
但是小西是个肥宅,不怎么喜欢活动,所以小西对于每个字母只会将其变为与其相邻的字母,如‘b'可以变为'a'和'c','g'可以变为'f'和'h'。但是'a'只能变为'b',‘z’只能变为'y'。
小西虽然是肥宅,但也想要运动,所以她会把字符串的每一个字母都进行一次变换。
_(:з」∠)_
现在请聪明的你来救救肥宅,判断小西能否将该字符串变为回文。
输入描述:
第一行为一个整数T,表示数据组数
接下来行为T组数据
每组数据第一行为一个整数n表示字符串的长度
第二行为小西将要处理的字符串
输出描述:
对于每组数据,若小西能够将其变为回文则输出一行一个数字1 否则输出一行一个数字0
示例1
输入
2 2 zb 6 abccba
输出
0 1