С++
Палиндром
Дано слово, состоящее только из заглавных и строчных латинских букв. Проверьте, верно ли, что это слово читается одинаково как справа налево, так и слева направо (то есть является палиндромом), если считать заглавные и строчные буквы неразличающимися. Выведите слово YES, если слово является палиндромом, и слово NO, если не является.
При решении этой задачи нельзя пользоваться вспомогательными массивами или строками.
Answers & Comments
Ответ:
Объяснение:
#include <iostream>
using namespace std;
int main()
{
string a;
cin >> a;
for (int i = 0; i < a.size(); i++)
if (a[i] < 'a')
a[i] = (char)(((int)a[i]) + 32);
bool flag = true;
for (int i = 0; i<a.size(); i++) {
if (a[i] != a[a.size() - 1 - i]) {
flag = false;
break;
}
}
if (flag)
cout << "YES";
else
cout << "NO";
return 0;
}