Mật khẩu của Vasya
Đề bài
Mô tả
Một mật khẩu hợp lệ là xâu chỉ gồm chữ cái Latin thường, chữ cái Latin hoa và chữ số, đồng thời phải chứa ít nhất một chữ số, ít nhất một chữ hoa và ít nhất một chữ thường.
Cho xâu gồm các chữ cái Latin thường, chữ hoa và chữ số. Bạn phải thực hiện đúng một lần thao tác: chọn một xâu con liên tiếp của và thay nó bằng một xâu khác có cùng độ dài, cũng chỉ gồm chữ thường, chữ hoa và chữ số. Sau thao tác, phải trở thành mật khẩu hợp lệ.
Độ dài của xâu con bị thay được tính như sau: xét tất cả các vị trí bị đổi ký tự. Nếu không có vị trí nào thì độ dài bằng ; ngược lại độ dài bằng vị trí cuối cùng trừ vị trí đầu tiên rồi cộng . Ví dụ, biến đổi abcdef thành a7cdEf có các vị trí thay đổi là và , nên độ dài bằng .
Hãy đưa ra một mật khẩu hợp lệ sao cho độ dài xâu con bị thay là nhỏ nhất có thể. Dữ liệu đảm bảo luôn tồn tại đáp án.
Dữ liệu vào
- Dòng đầu chứa số nguyên : số lượng bộ dữ liệu.
- dòng tiếp theo, mỗi dòng chứa một xâu gồm chữ cái Latin thường, chữ hoa và chữ số.
Dữ liệu ra
Với mỗi bộ dữ liệu, in ra một dòng chứa mật khẩu thu được. Nếu có nhiều đáp án cùng đạt độ dài nhỏ nhất, in ra bất kỳ đáp án nào.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 2 abcDCE htQw27 |
0bcDCE htQw27 |
Xâu abcDCE thiếu chữ số, chỉ cần đổi vị trí: thay a bằng 0 (độ dài ). Xâu htQw27 đã hợp lệ nên không đổi gì, độ dài bằng . |
| 3 afd 142 TRE |
A0d aA2 a0E |
afd chỉ có chữ thường, thiếu loại nên phải đổi ít nhất vị trí; chọn hai vị trí liền nhau để độ dài đúng bằng . Tương tự với 142 và TRE. |
Bình luận