Pagini recente »
Borderou de evaluare (job #670147)
|
Istoria paginii runda/2024-10-08-clasa-6-tema-11
|
Istoria paginii runda/2020-12-03-clasa-5-tema-11/clasament
|
Borderou de evaluare (job #80212)
|
Cod sursă (job #676982)
Cod sursă (job
#676982)
#include <fstream>
#pragma GCC optimize ("O1")
#pragma GCC optimize ("O2")
#pragma GCC optimize ("O3")
#pragma GCC optimize ("O4")
#pragma GCC optimize ("unroll-loops")
#pragma GCC optimize ("Ofast")
using namespace std;
ifstream cin("bart.in");
ofstream cout("bart.out");
int pi[500005];
string s;
void build(int x)
{
pi[x]=pi[x-1];
while(pi[x]>0 && s[x]!=s[pi[x]+1])
pi[x]=pi[pi[x]];
if(s[x]==s[pi[x]+1])
pi[x]++;
}
int main()
{
cin>>s;
s="#"+s;
for(int i=2;i<s.size();i++)
build(i);
for(int i=1;i<s.size()-pi[s.size()-1];i++)
cout<<s[i];
}