• Home
  • About
    • on Weekend photo

      on Weekend

      ๐™Ž๐™ฉ๐™ช๐™™๐™ฎ๐™ž๐™ฃ๐™œ

    • Learn More
    • Instagram
    • Github
  • Archive
    • All Posts
    • All Tags
    • All Categories
  • Categories
    • Problem Solving
    • TIL
    • Study
    • Etc
    • ํ•„์‚ฌ
  • Projects

[๋ฐฑ์ค€] 4949

19 Mar 2021

๋ฌธ์ œ

๊ท ํ˜•์žกํžŒ ์„ธ์ƒ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. stack์„ ํ™œ์šฉํ•˜๋Š” ๊ด„ํ˜ธ ๋ฌธ์ œ์— ์•ฝ๊ฐ„์˜ ์‘์šฉ์ด ๋”ํ•ด์ง„ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์˜ ๊ด„ํ˜ธ ๋ฌธ์ œ์™€ ๋‹ค๋ฅธ ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ์†Œ๊ด„ํ˜ธ์™€ ๋Œ€๊ด„ํ˜ธ๋ฅผ ๋ชจ๋‘ ๋™์‹œ์— ์”€.
  2. ๊ด„ํ˜ธ ์•ˆ์—๋„ ๊ท ํ˜•์ด ์žกํ˜€์žˆ์–ด์•ผ ํ•จ.

์ฐจ์ด์ ์„ ์‚ดํŽด๋ณด๋ฉด ๋ญ”๊ฐ€ ์–ด๋ ค์šธ ๊ฒƒ ๊ฐ™์ง€๋งŒ, ๋‹จ์ˆœํ•˜๊ฒŒ open bracket์ด ๋“ค์–ด์˜ค๋ฉด ์Šคํƒ์— ๋„ฃ๊ณ , close bracket์ด ๋“ค์–ด์˜ค๋ฉด ์Šคํƒ์—์„œ ๋นผ์ค€ ํ›„ ์ง์ด ๋งž๋Š”์ง€๋ฅผ ์‚ดํŽด๋ณด๋ฉด ๋˜๋Š” ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค.

์ •๋‹ต์ฝ”๋“œ

# 4949 ๊ท ํ˜•์žกํžŒ ์„ธ์ƒ

while True :
  s = input()

  if(s == '.') :
    break
  check = []
  isBalanced = True
  for c in s :
    if c in ['(','['] :
      check.append(c)
    elif c in [')',']'] :
      if check :
        recentBracket = check.pop()
        if not ( (c is ')' and recentBracket is '(') or (c is ']' and recentBracket is '[')) :
          isBalanced = False
          break
      else : # check ๋ฐฐ์—ด์ด ๋น„์–ด์žˆ๋Š” ๋ฐ close bracket์ด ๋“ค์–ด์˜จ ๊ฒฝ์šฐ
        isBalanced = False
        break

  if(check or not isBalanced) :
    print("no")
  else :
    print("yes")



problem_solvingpython Share Tweet +1