trang chủ / bài tập / diffgood

Xâu khác biệt

Đề bài

Mô tả

Cho một xâu s gồm n chữ cái Latin thường. Ta gọi một xâu là "đẹp" nếu tất cả các xâu con (chuỗi các ký tự liên tiếp) của nó đều đôi một khác nhau.

Bạn được phép thay đổi một số ký tự của s thành các chữ cái Latin thường khác. Hãy tìm số lần thay đổi ít nhất để s trở thành xâu đẹp, hoặc xác định rằng điều đó là không thể.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là độ dài của xâu.
  • Dòng thứ hai chứa xâu s gồm n chữ cái Latin thường.

Dữ liệu ra

In ra 1 nếu không thể biến s thành xâu đẹp. Ngược lại, in ra số lần thay đổi ít nhất cần thực hiện.

Ràng buộc

  • 1n105

Ví dụ

Input Output Giải thích
2
aa
1 Đổi ký tự đầu thành 'b' để được "ba", khi đó mọi xâu con đều khác nhau.
4
koko
2 Chẳng hạn đổi thành "abko", cần 2 lần thay đổi.
5
murat
0 Xâu đã có toàn ký tự khác nhau nên không cần thay đổi nào.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0