Cod sursă (job #696226)

Utilizator avatar ana_valeria Ana Valeria Duguleanu ana_valeria IP ascuns
Problemă Bart (clasele 9-10) Compilator cpp-32 | 0,48 kb
Rundă Arhiva de probleme Status evaluat
Dată 16 feb. 2023 18:25:22 Scor 100
#include <fstream>

using namespace std;
ifstream cin ("bart.in");
ofstream cout ("bart.out");
char v[500010];
int pi[500010];
int main()
{
    int n,i;
    char ch;
    n=0;
    while (cin>>ch)
    {
        n++;
        v[n]=ch;
    }
    for (i=2; i<=n; i++)
    {
        pi[i]=pi[i-1];
        while (pi[i]!=0 && v[pi[i]+1]!=v[i])
            pi[i]=pi[pi[i]];
        if (v[pi[i]+1]==v[i])
            pi[i]++;
    }
    for (i=1; i<=n-pi[n]; i++)
        cout<<v[i];
    return 0;
}