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

Số điện thoại ở đâu

Đề bài

Mô tả

Cho một xâu s gồm n chữ cái latinh thường và một số nguyên k. Hãy tìm xâu t có độ dài đúng bằng k thỏa mãn:

  • Tập các chữ cái xuất hiện trong t là con của tập các chữ cái xuất hiện trong s.
  • s nhỏ hơn t theo thứ tự từ điển.
  • Trong tất cả các xâu thỏa mãn hai điều kiện trên, t là xâu nhỏ nhất theo thứ tự từ điển.

Lưu ý rằng "tập các chữ cái" là một tập hợp, không phải đa tập. Ví dụ, tập các chữ cái của xâu abadaba là {a,b,d}.

Dữ liệu đảm bảo luôn tồn tại đáp án.

Dữ liệu vào

  • Dòng thứ nhất chứa hai số nguyên nk (1n,k105) — độ dài của s và độ dài yêu cầu của t.
  • Dòng thứ hai chứa xâu s gồm n chữ cái latinh thường.

Dữ liệu ra

In ra xâu t thỏa mãn các điều kiện trên.

Ràng buộc

  • 1n,k105.
  • s chỉ gồm các chữ cái latinh thường.

Ví dụ

Input Output Giải thích
3 3
abc
aca Các xâu độ dài 3 chỉ dùng chữ cái trong {a,b,c} và lớn hơn abc gồm: aca, acb, ... Nhỏ nhất trong số đó là aca.
3 2
abc
ac Xâu độ dài 2 nhỏ nhất lớn hơn abc theo thứ tự từ điển là ac.
3 3
ayy
yaa Tập chữ cái là {a,y}. Tăng vị trí đầu từ a lên y rồi điền a vào phần còn lại.
2 3
ba
baa k>n, ta giữ nguyên ba rồi nối thêm chữ cái nhỏ nhất a để được baa lớn hơn ba.

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