Mật khẩu mạnh **

View as PDF

Points: 20 (p) Time limit: 2.0s Memory limit: 256M Input: stdin Output: stdout

Khi đặt mật khẩu, để tăng độ khó của việc dò tấn công brute-force, ta đặt ra một số quy tắc như sau:

  • Về độ dài: Mật khẩu cần có ít nhất 12 ký tự; (Càng dài, mật khẩu càng khó đoán và tấn công)
  • Về kết hợp đa dạng kí tự: Mật khẩu cần chứa ít nhất một chữ cái in thường; một chữ cái in hoa; một chữ số và một ít nhất một kí tự khác (hay còn gọi là kí tự đặc biệt).

Ngoài ra, người ta cũng xác định một số dãy kí tự là dễ đoán và chúng không nên dùng các cụm từ đó trong mật khẩu.

Nếu một mật khẩu thoả mãn hai điều kiện trên thì ta tạm gọi nó là một mật khẩu mạnh.

Cho trước một mật khẩu. Hãy viết chương trình kiểm tra xem nó có phải là mật khẩu mạnh hay không.

Input Specification

Gồm hai dòng:

  • Dòng đầu tiên gồm một xâu kí tự tương ứng là mật khẩu.
  • Dòng thứ hai ghi các dãy kí tự được cho là dễ đoán (trong mỗi dãy không có dấu khoảng trắng; hai dãy liên tiếp ngăn cách nhau bởi một dấu khoảng trắng).

Output Specification

In ra "GOOD" nếu đó là mật khẩu mạnh, hoặc "BAD" trong trường hợp ngược lại.

Constraints

Mật khẩu đầu vào gồm không quá 100 kí tự.

Input Sample

abc123456@@@
123456 000000 abcxyz

Output Sample

BAD

Comments

There are no comments at the moment.