Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Arina;
- {$H+}
- var
- s: string;
- n, i, k,sum: integer;
- pref: array [1..150000] of integer;
- begin
- Assign(input, 'input.txt');
- Assign(output, 'output.txt');
- reset(input);
- rewrite(output);
- Readln(s);
- n := Length(s);
- k := 0;
- for i := 2 to n do begin
- while (k > 0) and (s[k+1] <> s[i]) do
- k := pref[k];
- if s[k+1] = s[i] then
- k+=1;
- pref[i] := k;
- end;
- for i := 1 to n do
- sum+=pref[i];
- Write(sum);
- Close(input);
- Close(output);
- end.
Advertisement
Add Comment
Please, Sign In to add comment