Решение задачи Является ли слово палиндромом? с Mccme

С пояснением   Просмотров: 118


По данной строке определите, является ли она палиндромом (то есть, можно ли прочесть ее наоборот, как, например, слово "топот").


Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    string s, s1;
    cin >> s;
    s1 = s;
    reverse(s.begin(), s.end());
    if(s == s1)
        cout << "yes";
    else
        cout << "no";
    return 0;
}

         

Администратор Photo Автор: Администратор


Решается эта задача просто. Считывая строку будем считать её длину, пускай в нашем случае это переменная b.
Потом так как элементы строки нумеруются с нуля, то уменьшим на единицу b.
Вводим переменную-счетчик i=0 и k=0.
И циклом проверяем не равен ли b-i элемент строки i-ому элементу пока b-i>=i.
Если нет то k=1 и выходим из цикла(break;).
Случай когда равны можно не рассматривать.
Теперь в зависимости от значения k выводим на экран yes или no.
Если k==0 то yes если k==1 то no.

Пояснение с mccme!!!



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться