Cod sursa(job #1728195)

Utilizator NecoaraGabrielNecoara Gabriel-Stefan NecoaraGabriel Data 12 iulie 2016 14:06:08
Problema PScPld Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb

#include<iostream>
#include<string.h>
#include<fstream>
using namespace std;

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

bool palindrom(char a[],int i,int j)
{
    while(i<j)
    {
        if(a[i]!=a[j])
            return false;
        i++;
        j--;
    }
    return true;
}

int main()
{
    int n,l,i,nr;
    char a[1000000];
    //cout<<"a=";cin>>a;
    f>>a;
    n=strlen(a);
    nr=n;
    l=1;
    i=0;
    bool pal=true;
    while(pal)
    {
        l++;
        pal=false;
        while(i<n-l+1)
        {
           if(palindrom(a,i,l))
           {
               nr++;
               if(!pal)
                pal=true;
           }
           i++;
        }
    }
    //cout<<"In sirul da se gasesc "<<nr<<" palindroame.";
    g<<nr;
    return 0;
}