var s : string; ans, l1, r1, l2, r2, len : longint; bo : boolean; function magic(l, r : longint) : int64; var ans : int64; i : longint; begin ans := 0; for i := l to r do ans := ans * 4 + ord(s[i+1]) - ord('a') + 1; exit(ans); end; begin read(s); len := length(s); ans := 0; for l1 := 0 to len - 1 do for r1 := l1 to len - 1 do begin bo := true; for l2 := 0 to len - 1 do for r2 := l2 to len - 1 do if (magic(l1, r1) = magic(l2, r2)) and ((l1 <> l2) or (r1 <> r2)) then bo := false; if bo = true then inc(ans); end; writeln(ans); end.
输入:abacaba
输出:1