Chuỗi con độc nhất

Xem dạng PDF

Gửi bài giải

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

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Bạn được cho một chuỗi s chỉ bao gồm 20 chữ cái Latin viết thường đầu tiên (a, b, …, t).

Một chuỗi con s[l; r] của s là dãy ký tự từ vị trí l đến r: s[l; r] = sl + sl + 1 … sr. Ví dụ, các chuỗi con của codeforces bao gồm code, force, f, for nhưng không bao gồm coder hay ford.

Bạn được phép thực hiện không quá một lần thao tác sau:

Chọn một chuỗi con s[l; r] và đảo ngược nó (nghĩa là sl sl + 1 … sr biến thành sr sr - 1 … sl).

Mục tiêu: tìm độ dài lớn nhất của chuỗi con dài nhất của s chỉ gồm các ký tự khác nhau (mỗi ký tự xuất hiện không quá một lần) sau khi bạn thực hiện không quá một lần đảo ngược.

Một chuỗi được gọi là gồm các ký tự khác nhau nếu không có ký tự nào xuất hiện nhiều hơn một lần. Ví dụ: abcde, arctg, minecraft là các chuỗi ký tự khác nhau, trong khi codeforces hay abacaba thì không.

Input

Dòng duy nhất chứa chuỗi s (độ dài không quá 10⁶), chỉ gồm các chữ cái a, b, …, t.

Output

In ra một số nguyên – độ dài lớn nhất của chuỗi con chỉ gồm các ký tự khác nhau mà bạn có thể đạt được, sau khi thực hiện tối đa một lần đảo ngược một đoạn liên tiếp trong s.

Sample input

abacaba

Sample output

3

Sample input

abcdecdf

Sample output

6

Sample input

aabbcc

Sample output

3

Sample input

abcdeefc

Sample output

6

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.