youngjaeLee1026
2022. 4. 2. 20:47
1. ๋ฌธ์
2. ์ ์ถ๋ ฅ
3. ์ ์ถ๋ ฅ ์์
4. ๋ฌธ์ ์ค๊ณ
- ์ด๋ฆฐ ๊ดํธ์ ๊ฒฝ์ฐ count๊ฐ์ ์ฆ๊ฐ์์ผ(stack push ์ฐ์ฐ)์ฃผ๊ณ , ๋ซํ ๊ดํธ์ ๊ฒฝ์ฐ count ๊ฐ์ ๊ฐ์์์ผ(stack pop ์ฐ์ฐ)
- count ๊ฐ์ด ์์๊ฐ ๋๋ ๊ฒฝ์ฐ ์ฌ๋ฐ๋ฅด์ง ๋ชปํ ๊ดํธ์ด์ด ๋๊ณ , ๊ดํธ์ด์ ๋ชจ๋ ์ํํ๊ณ ๋์ count๊ฐ์ด 0์ด ์๋ ๊ฒฝ์ฐ๋ ์ฌ๋ฐ๋ฅด์ง ๋ชปํ ๊ดํธ์ด์์ ์ ์ ์์
5. ์ ์ฒด ์ฝ๋
//MARK: - ๊ดํธ
//MARK: - Framework
import Foundation
//MARK: - Function
func solution() -> Void {
//MARK: - Input
guard let str: String = readLine() else { return }
var flag: Bool = false
var count: Int = 0
//MARK: - Process
for char in str {
if char == ")" {
count -= 1
if count < 0 {
flag = true
break
}
} else {
count += 1
}
}
flag = count == 0 ? false : true
//MARK: - Output
print(flag ? "NO" : "YES")
}
solution()
์ ์ฒด์ฝ๋๋ ์ฌ๊ธฐ์์ ํ์ธํ ์ ์์ต๋๋ค.