版权声明:转载请附上原文链接哟! https://blog.csdn.net/weixin_44170305/article/details/89878650
风华是一指流砂,苍老是一段年华。
题目描述
小R对数字很感兴趣,他认为数字充满了魅力,并且尤其喜欢回文数(数字从前向后读和从后向前读都一样的数字,例如6和1221都是回文数),小R认为回文数很漂亮,但是无奈的是小R的眼神并不太好,分辨一个数是否为回文数
经常让他感到眼花缭乱,所以你能编写一个程序来帮助他分辨一个长度为N的数是否为回文数吗?
输入
输入包含T组测试数据,第一行输入T,每组数据分两行,第一行为N(0<N<=1000),接下来的一行为一个长度为N的数字。
输出
对于每个数字,如果是回文数则输出YES,不是回文数则输出NO。
样例输入
copy
3 5 12121 8 12341234 2 22
样例输出
YES NO YES
提示
或许你应该要知道输入一位整数n的格式为 scanf("%1d",&n);
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<map>
#include<algorithm>
#include<iomanip>
#include<queue>
#include<set>
#include<stack>
using namespace std;
char a[1005];
int main()
{
int t,n,i,j;
cin>>t;
while(t--)
{
int flag=1;
cin>>n;
getchar();
for(i=0;i<n;i++)
cin>>a[i];
for(i=0,j=n-1;i<j;i++,j--)
{
if(a[i]!=a[j])
{
flag=0;
break;
}
}
if(flag)
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
return 0;
}