duong3982oj Contest 04 - Miku mày mò

Xem dạng PDF

Gửi bài giải


Điểm: 10,00 (OI)
Giới hạn thời gian: 1.5s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Hôm nay trong giờ học, vì bản tính thích mày mò của mình, Miku đã tạo ra một xâu "siêu đối xứng". Đó là xâu có độ dài chẵn, mà khi ta chia đôi xâu gốc thành hai phần bằng nhau, ta vẫn thu được hai xâu đối xứng có cùng độ dài.

Ví dụ, xâu aaaa là một xâu "siêu đối xứng" vì khi chia đôi, ta thu được hai xâu là aaaa đều là xâu đối xứng. Xâu aab hay aaa không phải là xâu "siêu đối xứng" vì không thỏa mãn định nghĩa của Miku.

Miku đố bạn một bài toán như sau:

Cho xâu ~S~, với ~|S| \le 10^6~. Các chữ cái trong xâu ~S~ đều là các ký tự tiếng Anh viết thường. Hỏi tồn tại bao nhiêu xâu "siêu đối xứng" theo định nghĩa của Miku là xâu con liên tiếp của xâu S?

INPUT

  • Dòng đầu tiên chứa số nguyên dương ~N~ (~1 \le N \le 10^6~) là độ dài của xâu ~S~.
  • Dòng thứ hai chứa xâu ~S~ chỉ có ký tự từ ~a~ đến ~z~.

OUTPUT

  • In ra dòng duy nhất là đáp số bài toán.

SAMPLE INPUT 1

5
ababa

SAMPLE OUTPUT 1

4

Giải thích: Các xâu "siêu đối xứng" thu được là ab, ba, ab, ba

SAMPLE INPUT 2

5
aaaaa

SAMPLE OUTPUT 2

6

Giải thích: Các xâu "siêu đối xứng" thu được là aa, aa, aa, aa, aaaa, aaaa.

SUBTASKS

Subtask Điểm Ràng buộc
1 ~15~ ~|S| \le 100~.
2 ~25~ ~|S| \le 5000~.
3 ~10~ Tất cả các ký tự trong xâu ~S~ đều là ~a~.
4 ~50~ Không có ràng buộc gì thêm.

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.