[ BOJ / Python ] 1092๋ฒ ๋ฐฐ
์ด๋ฒ ๋ฌธ์ ๋ ํฌ๋ ์ธ์ ๋ฌด๊ฒ ์ ํ๊ณผ ์์์ ๋ฌด๊ฒ๋ฅผ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํ ๋ค์ ํฌ๋ ์ธ๊ณผ ์์๋ฅผ ๊ฐ์ฅ ์์์๋ถํฐ ๊ฒ์ฌํ๋ฉฐ ๋ฌด๊ฑฐ์ด ์์๋ถํฐ ๋ฌด๊ฑฐ์ด ํฌ๋ ์ธ์ผ๋ก ์ฎ๊ธฐ๋๋ก ๋ฐฐ์ ํด์ฃผ๊ณ ํฌ๋ ์ธ์ ์์๋ฅผ ์ฌ๋ฆด ๋๋ง๋ค ์๊ฐ์ ์ฆ๊ฐ์ํค๋ ๋ฐฉ์์ผ๋ก ํด๊ฒฐํ์๋ค.
- n์ ์ ๋ ฅ๋ฐ๋๋ค.
- ํฌ๋ ์ธ์ ์ ํ ๋ฌด๊ฒ๋ฅผ ์ ๋ ฅ ๋ฐ์ crane ๋ฐฐ์ด์ ์ ์ธํ๊ณ ์ ๋ ฅ๋ฐ๋๋ค.
- m์ ์ ๋ ฅ๋ฐ๋๋ค.
- ์์์ ๋ฌด๊ฒ๋ฅผ ์ ๋ ฅ ๋ฐ์ box ๋ฐฐ์ด์ ์ ์ธํ๊ณ ์ ๋ ฅ๋ฐ๋๋ค.
- crane๊ณผ box๋ฅผ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํ๋ค.
- ์ฎ๊ฒจ์ง ์์์ ๊ฐฏ์๋ฅผ ์นด์ดํ ํ ๋ณ์ cnt๋ฅผ 0์ผ๋ก ์ ์ํ๋ค.
- ์์๋ฅผ ์ฎ๊ธฐ๋ ์๊ฐ์ ์ ์ฅํ ๋ณ์ time์ 0์ผ๋ก ์ ์ํ๋ค.
- ์์๊ฐ ์ฎ๊ฒจ์ง์ ํ์ํ๊ธฐ ์ํ ๋ฐฐ์ด chk๋ฅผ m๊ฐ์ False๋ก ๊ตฌ์ฑ๋๋๋ก ์ ์ํ๋ค.
- ์์์ ์ธ๋ฑ์ค๋ฅผ ํธํ๊ฒ ์ฌ์ฉํ๊ธฐ ์ํ ๋ฐฐ์ด tmp๋ฅผ n๊ฐ์ 0์ผ๋ก ๊ตฌ์ฑ๋๋๋ก ์ ์ํ๋ค.
- ๋ง์ฝ crane[0]์ด box[0]๋ณด๋ค ์์ ๊ฒฝ์ฐ -1์ ์ถ๋ ฅํ ๋ค์ ํ๋ก๊ทธ๋จ์ ์ข ๋ฃํ๋ค.
- cnt๊ฐ box ๋ฐฐ์ด์ ๊ธธ์ด๋ณด๋ค ์์ ๋์ ๋ฐ๋ณตํ๋ while๋ฌธ์ ๋๋ฆฐ๋ค.
-> n๋ฒ ๋ฐ๋ณตํ๋ i์ ๋ํ for๋ฌธ์ ๋๋ฆฐ๋ค.
--> tmp[i]๊ฐ box ๋ฐฐ์ด์ ๊ธธ์ด๋ณด๋ค ์์ ๋์ ๋ฐ๋ณตํ๋ while๋ฌธ์ ๋๋ฆฐ๋ค.
---> ๋ง์ฝ chk[tmp[i]]๊ฐ False์ด๊ณ , crane[i]๊ฐ box[tmp[i]]๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ ๊ฒฝ์ฐ, (ํ์ฌ ์์๊ฐ ์์ฎ๊ฒจ์ก๊ณ ํ์ฌ ํฌ๋ ์ธ์ผ๋ก ์ฎ๊ธธ ์ ์๋ ๊ฒฝ์ฐ)
----> chk[tmp[i]]๋ฅผ True๋ก ๊ฐฑ์ ํ๊ณ , tmp[i]๋ฅผ 1 ์ฆ๊ฐ์ํค๊ณ cnt๋ฅผ 1 ์ฆ๊ฐ์ํจ ๋ค while๋ฌธ์ ์ข ๋ฃํ๋ค.
---> tmp[i]๋ฅผ 1 ์ฆ๊ฐ์ํจ๋ค.
-> time์ 1 ์ฆ๊ฐ์ํจ๋ค. - time์ ์ถ๋ ฅํ๋ค.
Code
n=int(input())
crane=list(map(int, input().split()))
m=int(input())
box=list(map(int, input().split()))
crane.sort(reverse=True)
box.sort(reverse=True)
cnt=0
time=0
chk=[False]*m
tmp=[0]*n
if crane[0]<box[0]:
print(-1)
quit()
while cnt<len(box):
for i in range(n):
while tmp[i]<len(box):
if chk[tmp[i]]==False and crane[i]>=box[tmp[i]]:
chk[tmp[i]]=True
tmp[i]+=1
cnt+=1
break
tmp[i]+=1
time+=1
print(time)
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ([ BOJ / Python ] 1092๋ฒ ๋ฐฐ), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@xx0hn/BOJ-Python-1092๋ฒ-๋ฐฐ์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ
์ธ ๋ฐ๊ฒฌ์ ์ ๋
(Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค