Cod sursa(job #3194678)

Utilizator CtrlAltDeleteCtrlAltDelete CtrlAltDelete Data 18 ianuarie 2024 21:15:56
Problema PScPld Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <iostream>
#include <fstream>
#include <string>

using namespace std;

ifstream in("pscpld.in");
ofstream out("pscpld.out");

int countPalindromes(const string& s) {
    int n = s.size();
    int count = 0;

    for (int center = 0; center < 2 * n; center++) {
        int left = center / 2;
        int right = left + center % 2;

        while (left >= 0 && right < n && s[left] == s[right]) {
            count++;
            left--;
            right++;
        }
    }

    return count;
}

int main() {
    string input;
    in >> input;

    int result = countPalindromes(input);
    out << result << "\n";

    return 0;
}