Đảo ngược và so sánh


Submit solution

Points: 3
Time limit: 1.0s
Memory limit: 250M

Author:
Problem type

Bạn có một xâu ký tự A = A_1A_2A_3 ... A_n chỉ gồm các chữ cái tiếng anh in thường. Bạn có thể chọn 2 chỉ số bất kỳ là ij sao cho 1 \le i \le j \le n và đảo ngược đoạn xâu con A_iA_i+1A_i+2 ... A_j. Bạn có thể thực hiện thao tác này nhiều hơn một lần.

Nhiệm vụ của bạn là đếm xem có bao nhiêu xâu khác nhau khi thực hiện thao tác trên ?

Input:

  • Dòng duy nhất gồm 1 xâu ký tự A độ dài N,( 1 \le N \le 2*10^5)

Output:

  • In ra số xâu khác nhau mà bạn có thể nhận được bằng cách đảo ngược bất kỳ xâu con nào trong A nhiều nhất 1 lần.

Example:

Input 1:

aatt

Output 1:

5

Giải thích

Bạn có thể tạo ra các xâu là aatt, atat (đảo vị trí A[2..3]), atta (đảo vị trí A[2..4]), ttaa (đảo vị trí A[1..4]), taat (đảo vị trí A[1..3])

Input 2:

xxxxxxxxxx

Output 2:

1

Comments

There are no comments at the moment.