Mobile coding works. A laptop is faster for long sessions.

Problem

The program reads from standard input an expression. Only brackets are of interest: round (), square [], and curly {}. All other characters are ignored.

The expression has balanced brackets if:

  • every opening bracket has a matching closing bracket of the same type, later in the string;
  • brackets do not interleave: the last opened bracket is the first to be closed.

For example, ([]{}) and {[()]} are balanced, but ([)] is not.

Input format

Input input.txt

The program reads from standard input a single line with the expression (at most 1000 characters long). The line may be empty.

Output format

Output output.txt

The program prints to standard output: - `DA` if the brackets in the expression are balanced; - `NU` otherwise. An expression with no brackets at all is considered balanced.

Example

input
{[a+(b*c)]-d}
output
DA

Ready to solve this challenge?

Create a free account to write code, submit solutions, and track your progress.

⌨️ Keyboard Shortcuts

Code Editor
Run Code
Ctrl Enter
Submit Code
Ctrl Shift Enter
Format Code
Shift Alt F
Toggle Comment
Ctrl /
Undo
Ctrl Z
Redo
Ctrl Y
Navigation
Global Search
/
Show Shortcuts
?
Close Modal
Esc

🔍 Interactive Debugger

0 / 0

Analyzing your code...

📦 Variables

No variables yet

📚 Call Stack
main() line 1
📤 Output