## DMOPC '19 Contest 4 P1 - Valid Strings

View as PDF

Points: 5 (partial)
Time limit: 2.0s
Memory limit: 64M

Authors:
Problem type

Veshy is entering strings into his calculator consisting of only (, ), and decimal digits; however, some strings are invalid and produce an error.

A valid string must either be:

1. Nothing (an empty string).
2. A non-negative integer expressed in decimal digits (e.g. 5, 230, 0032), optionally followed by another valid string.
3. A pair of brackets enclosing a valid string (e.g. (5)), also optionally followed by another valid string.

Examples of valid strings:
(1)(2), ((1))(2), 1(2), (500())

Examples of invalid strings:
(12, (1)), ((1)()

You are given strings. For each string, , output on the th line, the validity of the th string. If the string is valid, output YES. If the string is invalid, output NO. The length in characters of each string, , is guaranteed to be in the range .

In all tests,

#### Input Specification

The first line contains one number, .
The following lines each contain one string .

#### Output Specification

Output the validity of the th string on the th line.

#### Sample Input

7
1(2)
(1)(2)
((1))(2)
(500())
(12
(1))
((1)()

#### Sample Output

YES
YES
YES
YES
NO
NO
NO