A24157. 回文字串
填空题
中等
知识点
题目描述
回文字串
题目描述
输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。
输入
一行字符串。
输出
是否为回文串。是输出“Yes”,否输出“No。”
输入样例
abccb输出样例
No参考答案
#include <bits/stdc++.h>
using namespace std;
int main()
{
char s[105], r[105];//r:逆序字符串
cin >> s;
int len = strlen(s) - 1;//去掉末尾'.'
s[len] = '\0';
for(int i = 0; i < len; ++i)//构造逆序字符串
r[len-1-i] = s[i];
r[len] = '\0';
cout << (strcmp(s,r) == 0 ? "Yes" : "No");//判断原字符串和逆序字符串是否相同
return 0;
}答案解析
#include <bits/stdc++.h>
using namespace std;
int main()
{
string s, r;//r:逆序字符串
cin >> s;
s.pop_back();//去掉末尾'.'
r = s;//复制s到r
reverse(r.begin(), r.end());//将r前后翻转
cout << (s == r ? "Yes" : "No");//判断原字符串和逆序字符串是否相同
return 0;
}
上一题
下一题