๋ฐฑ์ค (Baekjoon Online Judge) ๊ทธ๋ฆฌ๋ - 2839๋ฒ ์คํ ๋ฐฐ๋ฌ
์คํ๋ฐฐ๋ฌ ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ๋ ์ฌ๋ฆฐ ์์ด๋์ด
1. 5KG ๋ด์ง๋ก ์ต๋ํ ๋ด๋๋ค.
2. ๋จ์ ์คํ์ 3KG ๋ด์ง์ ๋ด๋๋ค.
์๋๋ฐ...
1kg -> x
2kg -> x
3kg -> 3kg 1๊ฐ
4kg -> x
5kg -> 5kg 1๊ฐ
6kg -> 3kg 2๊ฐ
7kg -> x
8kg -> 5kg 1๊ฐ, 3kg 1๊ฐ
9kg -> 3kg 3๊ฐ...
์ด๋ฐ ์์ผ๋ก ์งํ๋๋๋ฐ
์ผ๋จ 5kg์ ์ต๋ํ ๋ด์์ผ ํ๋ ๊ฒ์ ํ์คํ๋ค. ์ต์ํ์ ๋ด์ง ๊ฐฏ์๋ง ์ฌ์ฉํด์ผ ํ๋๊น.
๊ทธ๋์ ๋จ์ 3kg์ ์ด๋ป๊ฒ ๋ด์๊ฒ์ธ์ง ์๊ฐํด๋ดค๋๋ฐ, 5KG๋ด์ง์ ์ต๋ํ ๋ด์ผ๋ฉด ์ดํ์ ์ธ๊ฐ์ง ๊ฒฝ์ฐ์ ์๊ฐ ์๊ธด๋ค.
- 5kg์ ๋ค ๋ด๊ณ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 0์ธ ๊ฒฝ์ฐ
- 5kg์ ๋ค ๋ด๊ณ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 1์ธ ๊ฒฝ์ฐ
- 5kg์ ๋ค ๋ด๊ณ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 2์ธ ๊ฒฝ์ฐ
์ด ์ธ๊ฐ์ง ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฝ๋ฉ์ ์งํํ๋ค.
a = int(input())
sum = 0
num5=0
num3=0
if a %5==0: #5์๋ง ๋ด์๋ ๋๋ค๋ฉด
num5 = a//5
else: #5์ 3์ ์์ฌ ๋ด๊ฑฐ๋.. ๋ฑ๋ฑ
num5 = a//5 # ๋จผ์ 5์ ์ต๋ํ ๋ด๋๋ค.
k = a-5*num5 # 5์ ๋ด์๋งํผ ์
๋ ฅ๋ฐ์ ๋ฌด๊ฒ์์ ๋นผ์ค๋ค.
#print(num5,k)
if k%3==1: #๋จ์ ๋ฌด๊ฒ๋ฅผ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 1์ด๋ฉด?
num5 = num5-1 #num5๋ฅผ ํ๋ ๋นผ์ฃผ๊ณ
k = k+5 #๋จ์ ๋ฌด๊ฒ +5๋ฅผ ํด์ค๋ค
num3 = k//3 #3์ผ๋ก ๋๋ ๋ชซ์ num3์ ์ ์ฅํ๋ค.
#print("num5 =",str(num5),"num3 =", str(num3))
elif k%3==2: #๋จ์ ๋ฌด๊ฒ๋ฅผ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 2์ด๋ฉด?
num5=num5-2 #num5์์ ๋ด์ง ๋๊ฐ๋ฅผ ๋ฏ์ด์
k = k+10 #๋จ์ ๋ฌด๊ฒ +10๋ฅผ ํด์ค๋ค
num3 = k//3 #3์ผ๋ก ๋๋ ๋ชซ์ ์ ์ฅ
#print("num5 =",str(num5),"num3 =", str(num3))
else: #3์ผ๋ก ๋๋์ด ๋จ์ด์ง๋ฉด ์ข๊ณ
num3 = k//3
#print("num5 =",str(num5),"num3 =", str(num3))
if num5<0 or num3<0: #๊ทผ๋ฐ 5kg๋ด์ง๋ 3kg๋ด์ง์ ๊ฐฏ์๊ฐ ์์๋ผ๋ฉด?
print(-1) #๋๋์ด ๋จ์ด์ง์ง ์๋ ์์ด๋ฏ๋ก -1์ถ๋ ฅ
else:
sum = num5+num3 #์๋๋ฉด ์ถ๋ ฅ
print(sum)
์ผ๋จ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 1์ธ ๊ฒฝ์ฐ 5kg๋ด์ง๋ฅผ ํ๋ ๋ฏ์ด 6kg์ ๋ง๋ค๋ฉด 3kg ๋ ๋ด์ง๋ก ๋ฐ๊ฟ ์ ์๋ค.
๋ ๋น์ทํ ๋ฐฉ๋ฒ์ผ๋ก 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ 2์ธ ๊ฒฝ์ฐ 5kg๋ด์ง๋ฅผ ๋๊ฐ ๋ฏ์ด 12(10+2)kg์ ๋ง๋ค๋ฉด 3kg ๋ค ๋ด์ง๋ก ๋ฐ๊ฟ ์ ์๋ค.
๊ฒฐ๊ณผ๋ ์ฑ๊ณต~!
์์ด๋์ด ๋ ์ฌ๋ฆฌ๊ธฐ๋ ์ด๋ ต๋ค...!
https://www.acmicpc.net/problem/2839