25 lines
447 B
Nim
25 lines
447 B
Nim
from random import random, randomize, shuffle
|
|
from strutils import repeat
|
|
|
|
randomize()
|
|
|
|
proc gen(n: int): string =
|
|
result = "[]".repeat(n)
|
|
shuffle(result)
|
|
|
|
proc balanced(txt: string): bool =
|
|
var b = 0
|
|
for c in txt:
|
|
case c
|
|
of '[':
|
|
inc(b)
|
|
of ']':
|
|
dec(b)
|
|
if b < 0: return false
|
|
else: discard
|
|
b == 0
|
|
|
|
for n in 0..9:
|
|
let s = gen(n)
|
|
echo "'", s, "' is ", (if balanced(s): "balanced" else: "not balanced")
|