trang chủ / đề bài / nearbeaut

Số k-đẹp gần nhất

Đề bài

Mô tả

Một số nguyên dương được gọi là k-đẹp nếu biểu diễn thập phân của nó (không có số 0 ở đầu) chứa không quá k chữ số phân biệt.

Ví dụ với k=2: các số 3434443, 55550, 777 và 21 là k-đẹp, còn các số 120, 445435 và 998244353 thì không.

Cho số nguyên n. Hãy tìm số nguyên x nhỏ nhất sao cho x≥n và x là k-đẹp.

Dữ liệu vào

  • Dòng đầu chứa số nguyên t là số lượng truy vấn.
  • Mỗi truy vấn trong t dòng tiếp theo gồm hai số nguyên n và k.

Dữ liệu ra

Với mỗi truy vấn, in ra trên một dòng riêng số x nhỏ nhất là k-đẹp và thỏa mãn x≥n.

Ràng buộc

  • 1≤t≤104
  • 1≤n≤109
  • 1≤k≤2

Ví dụ

Input Output Giải thích
4
1 1
221 2
177890 2
998244353 1
1
221
181111
999999999
Truy vấn 1: 1 chỉ có một chữ số nên là 1-đẹp. Truy vấn 2: 221 dùng hai chữ số {2,1} nên là 2-đẹp. Truy vấn 3: 181111 dùng {1,8} và là số nhỏ nhất ≥177890 thỏa mãn. Truy vấn 4: chỉ được dùng một chữ số, đáp án là 999999999.
1
1000000000 1
1111111111 Số 1000000000 dùng hai chữ số {1,0} nên không là 1-đẹp. Số nhỏ nhất chỉ gồm một chữ số và ≥109 là 1111111111.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0