HSG10 Thái Nguyên 2026 - Biến đổi số
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Cho một số nguyên dương ~N~. Ta thực hiện thao tác thay đổi các chữ số của ~N~ theo quy tắc sau:
Chọn một vị trí bất kỳ trong chuỗi chữ số của ~N~.
Thay thế chữ số tại vị trí đó bằng một chữ số mới (từ 0 đến 9).
Điều kiện: Số mới được tạo thành phải có cùng số lượng chữ số với ~N~ và không được có chữ số 0 ở đầu.
Mỗi lần thay đổi một vị trí được tính là một thao tác.
Yêu cầu: Hãy tìm số thao tác tối thiểu để biến đổi số ~N~ ban đầu thành một số mới là bội của 111.
Input
Dòng 1: số nguyên ~T~ ~(1 \le T \le 25)~ là số lượng bộ dữ liệu.
~T~ dòng tiếp theo, mỗi dòng chứa một số nguyên dương ~N~.
Output
Gồm ~T~ dòng tương ứng với kết quả của ~T~ bộ dữ liệu. Mỗi dòng là một số nguyên đại diện cho số thao tác tối thiểu tìm được hoặc -1 nếu không có phương án thỏa mãn.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~30\%~ | Mỗi số nguyên có số lượng chữ số ~\le 9~ và có nhiều nhất một chữ số khác các chữ số còn lại |
| 2 | ~40\%~ | ~T \le 10~, mỗi số nguyên có số chữ số ~\le 9~ |
| 3 | ~30\%~ | ~T \le 25~, mỗi số nguyên có số chữ số ~\le 18~ |
Sample Input 1
4
111
220
13
991990
Sample Output 1
0
1
-1
2
Notes
Có 4 bộ dữ liệu:
Số 111 không cần biến đổi.
Số 220 không chia hết cho 111. Ta có thể thay chữ số 0 ở cuối thành chữ số 2 để được số 222 chia hết cho 111.
Số 13 không thể biến đổi để chia hết cho 111.
Số 991990 cần biến đổi hai chữ số ở vị trí 3 và vị trí 6 để được số 999999 chia hết cho 111.
Bình luận