Dãy ngoặc (ngoac)

View as PDF

Submit solution

Points: 100.00 (partial)
Time limit: 1.0s
Memory limit: 102M
Input: stdin
Output: stdout

Author:
Problem type

Người ta định nghĩa một dãy ngoặc đúng theo đệ quy như sau:

  • Xâu A là xâu rỗng là một dãy ngoặc đúng
  • Nếu xâu A là dãy ngoặc đúng thì (A) cũng là dãy ngoặc đúng
  • Nếu xâu A và xâu B là dãy ngoặc đúng thì AB cũng là dãy ngoặc đúng.
  • Còn những xâu chứa những ký tự khác "(" và ")" được gọi là xâu không hợp lệ. Ví dụ: S = "(A()B)" là dãy "KHONG HOP LE" vì chứa chữ cái A và B S = "()()(())" là dãy ngoặc "DUNG" S = "()())" là dãy ngoặc "KHONG DUNG" Cho xâu S. Hãy kiểm tra xâu S là dãy ngoặc "DUNG", "KHONG DUNG" hay là xâu "KHONG HOP LE"

INPUT:

  • Một xâu S chứa tối đa ~10^6~ phần tử

OUTPUT:

  • Thông báo "KHONG HOP LE" nếu xâu không hợp lệ
  • Thông báo "DUNG" nếu xâu đúng
  • Thông báo "KHONG DUNG" nếu xâu không đúng

Ví dụ:

INPUT 1
(A()B)
OUTPUT 1
KHONG HOP LE
INPUT 2
()()(())
OUTPUT 2
DUNG

Comments

Please read the guidelines before commenting.


There are no comments at the moment.