[BOJ] 1874 ์คํ์์ด (Python / ํ์ด์ฌ)
๐งท ๋ฌธ์
https://www.acmicpc.net/problem/1874
1๋ถํฐ n๊น์ง์ ์๋ฅผ ์คํ์ ๋ฃ๊ณ ๋นผ๋ ๊ฒ์ ๋ฐ๋ณตํ๋๋ฐ, ์ค๋ฆ์ฐจ์์ผ๋ก๋ง pushํ ์ ์๊ณ ์์์ ์์ด์ด ์ฃผ์ด์ก์ ๋ ์์ ์คํ์ ์ด์ฉํ์ฌ ๋ง๋ค ์ ์๋์ง ์๋์ง๋ฅผ ์์๋ณด๋ ๋ฌธ์ ์ด๋ค.
๐ ํ์ด
์ด ๋ฌธ์ ๋ฅผ ํ ๋ ์ฒ์์๋ ๋ฌธ์ ์์ฒด๋ฅผ ์ดํดํ๋๋ฐ ์ด๋ ค์์ด ์์์ง๋ง ์๋์ ์๋ ์์ ๋ฅผ ์ง์ ์์ผ๋ก ๊ทธ๋ ค๊ฐ๋ฉด์ ์ดํดํ ์ ์์๋ค.
Step 1.
1๋ถํฐ n๊น์ง์ ์๋ฅผ ๋ฃ์ด์ค sequence
๋ฆฌ์คํธ์ ๊ฒฐ๊ณผ๋ก ๋ณด์ฌ์ค res
๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์๋ค.
๊ทธ๋ฆฌ๊ณ num
๋ณ์๋ฅผ 1๋ก ์ด๊ธฐํํ๊ณ ๋ฌธ์ ์กฐ๊ฑด๊ณผ ๋น๊ตํ ์ ์๋ check
๋ณ์๋ฅผ True๋ก ์ค์ ํ ํ์ ์์์ ์์ด์ ๋ง๋ค ์ ์๋ค๋ฉด NO๋ฅผ ์ถ๋ ฅํ ์ ์๋๋ก ๋ง๋ค์๋ค.
Step 2.
n๊ฐ์ ์ค์ ํตํด ์
๋ ฅ๋๋ ์์์ ์์ด์ ์์๋ค์ tmp
๋ผ๋ ์ด๋ฆ์ ๋ณ์๋ก ๋ฐ์์ฃผ์๋ค.
while
๋ฌธ์ ์ด์ฉํด num
์ด tmp
๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ๋ sequence
๋ฆฌ์คํธ์ num
๊ฐ์ pushํ๋ค.
๋์์ ๊ฒฐ๊ณผ๋ก ๋ณด์ฌ์ค res
๋ฆฌ์คํธ์๋ +
๋ฅผ appendํด์คฌ๋ค.
๊ทธ ํ์๋ num
๊ฐ์ ํ๋ ์ฌ๋ ค์ฃผ๊ณ ๋ค์ ๋น๊ตํด์ฃผ์๋ค.
Step 3.
๋ค์์ผ๋ก sequence
๋ฆฌ์คํธ์ top, ์ฆ sequence[-1]
์ด ์
๋ ฅ๋ tmp
๊ฐ๊ณผ ๊ฐ๋ค๋ฉด sequence
๋ฆฌ์คํธ์์ pop์ ํด์ฃผ๊ณ ๋์์ res
๋ฆฌ์คํธ์๋ -
๋ฅผ appendํด์ค๋ค.
๋ง์ฝ sequencd[-1]
์ด tmp
์ ๋ค๋ฅด๋ค๋ฉด ๋ฌธ์ ์์ ์ฃผ์ด์ง ์์์ ์์ด์ ๋ง๋ค ์ ์๊ธฐ ๋๋ฌธ์ check
๋ฅผ False๋ก ์ด๊ธฐํ ํด์ค ํ์ break๋ก for๋ฌธ์ ๋น ์ ธ๋๊ฐ๋๋ก ํ์๋ค.
Step 4.
์ฑ๊ณต์ ์ผ๋ก for๋ฌธ์ ๋ค ๋์๋ค๋ฉด check
๊ฐ True์ผ ๊ฒ์ด๊ณ ์ด ๊ฒฝ์ฐ์๋ res
๋ฆฌ์คํธ์ ์์๋ค์ ํ๋์ฉ ์ถ๋ ฅํด์ค๋ค.
๊ทธ๋ ์ง ์๋ค๋ฉด, check
๊ฐ False์ผ ๊ฒ์ด๊ณ ์ด ๋๋ NO๋ฅผ ์ถ๋ ฅํด์ค๋ค.
๐ ๋์ ์ฝ๋
import sys
if __name__ == "__main__":
n = int(input())
sequence = []
res = []
num = 1
check = True
for _ in range(n):
tmp = int(input())
while num <= tmp:
sequence.append(num)
res.append('+')
num += 1
if sequence[-1] == tmp:
sequence.pop()
res.append('-')
else:
check = False
break
if check:
for r in res:
print(r)
else:
print("NO")
'Algorithm > Problem Solving' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ] 1929 ์์ ๊ตฌํ๊ธฐ (Python / ํ์ด์ฌ) (0) | 2021.07.30 |
---|---|
[BOJ] 2609 ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์ (Python / ํ์ด์ฌ) (0) | 2021.07.30 |
[BOJ] 1918 ํ์ ํ๊ธฐ์ (Python / ํ์ด์ฌ) (0) | 2021.07.30 |
[BOJ] 10799 ์ ๋ง๋๊ธฐ (Python / ํ์ด์ฌ) (0) | 2021.07.30 |
[BOJ] 1158 ์์ธํธ์ค ๋ฌธ์ (Pyhton / ํ์ด์ฌ) (0) | 2021.07.30 |
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote
๋ค๋ฅธ ๊ธ
-
[BOJ] 2609 ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์ (Python / ํ์ด์ฌ)
[BOJ] 2609 ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์ (Python / ํ์ด์ฌ)
2021.07.30 -
[BOJ] 1918 ํ์ ํ๊ธฐ์ (Python / ํ์ด์ฌ)
[BOJ] 1918 ํ์ ํ๊ธฐ์ (Python / ํ์ด์ฌ)
2021.07.30 -
[BOJ] 10799 ์ ๋ง๋๊ธฐ (Python / ํ์ด์ฌ)
[BOJ] 10799 ์ ๋ง๋๊ธฐ (Python / ํ์ด์ฌ)
2021.07.30 -
[BOJ] 1158 ์์ธํธ์ค ๋ฌธ์ (Pyhton / ํ์ด์ฌ)
[BOJ] 1158 ์์ธํธ์ค ๋ฌธ์ (Pyhton / ํ์ด์ฌ)
2021.07.30