
์ ๊ทผ๋ฐฉ์
- ์ต์ ๋ด์ง์๋ฅผ ๊ตฌํ๊ธฐ ์ํด์๋ 3๋ณด๋จ 5๋ก ๋ง์ด ๋๋์ด์ผํ๋ค.
๋ฐ๋ผ์ ํฌ๋ก๊ทธ๋จ์์ 3์ฉ ๋ง์ด๋์ค๋ฅผ ํด์ฃผ์ด 5๋ก ๋๋์ด ๋จ์ด์ง๋์ง ํ์ธํ์๋ค.
3์ ๊ณ์ ๋นผ์ฃผ์ด n์ด ๋ง์ด๋์ค๊ฐ ๋์ด๋ฒ๋ฆฌ๋ ๊ฒฝ์ฐ๋ -1์ ์ถ๋ ฅํด์ฃผ์๋ค.
n = int(input())
cnt =0
while n >0:
if n%5 == 0:
cnt += n//5
break
n -= 3
cnt +=1
if n >=0:
print(cnt)
else:
print(-1)
ํ์ด ์ค์ dp ๋ฐฉ์์ผ๋ก๋ ํ ์ ์์ ๊ฑฐ ๊ฐ์์ ์ฝ๋ฉ์ ํด๋ณด์๋ค.
-------------
n = int(input())
d = [10001] *(n+1)
cnt = 0
d[0] = 0
d[3] = 1
for i in range(5,n+1):
d[i] = min(d[i-3],d[i-5]) + 1
if d[n] == 10001:
print(-1)
else:
print(d[n])
'์๊ณ ๋ฆฌ์ฆ > ๊ทธ๋ฆฌ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 10162)์ ์๋ ์ธ์ง python (0) | 2022.02.28 |
---|---|
๋ฐฑ์ค 1931๋ฒ) ํ์์ค ๋ฐฐ์ (0) | 2022.02.16 |
๋ฐฑ์ค 11047๋ฒ) ๋์ 0 (0) | 2022.02.14 |
๋ฐฑ์ค 11399) ATM (0) | 2022.02.11 |