๋ฌธ์ ๋งํฌ: www.acmicpc.net/problem/14916
14916๋ฒ: ๊ฑฐ์ค๋ฆ๋
์ฒซ์งธ ์ค์ ๊ฑฐ์ค๋ฆ๋ ์ก์ n(1 ≤ n ≤ 100,000)์ด ์ฃผ์ด์ง๋ค.
www.acmicpc.net
๋ฌธ์ ์ค๋ช
๋ง์ฝ n์ด 1์ด๋ 3์ด ์ฃผ์ด์ง๋ค๋ฉด, 2์๊ณผ 5์์ผ๋ก๋ ๊ฑฐ์ฌ๋ฌ ์ค ์ ์์ผ๋ฏ๋ก -1์ ๋ฐํํฉ๋๋ค.
๋๋จธ์ง๋ ์ต์ ๊ฐ์์ ๋์ ์ผ๋ก ๊ฑฐ์ฌ๋ฌ์ค์ผ ํ๋ฏ๋ก 5์์ ๋จผ์ ๊ฑฐ์ฌ๋ฌ์ฃผ๋ ๋ฐฉ๋ฒ์ ์ ํํ์ต๋๋ค.
n์ 5๋ก ๋๋ด์ ๋ ๋๋จธ์ง๋ ๋ค์๊ณผ ๊ฐ์ด 5๊ฐ์ง์ ๋๋ค. (x: n์ 5๋ก ๋๋ ๋ชซ)
- ๋๋จธ์ง๊ฐ 0์ผ ๊ฒฝ์ฐ
5์์ผ๋ก๋ง ๊ฑฐ์ฌ๋ฌ ์ค ์ ์์ผ๋ฏ๋ก answer = x - ๋๋จธ์ง๊ฐ 1์ผ ๊ฒฝ์ฐ
5์์ ํ๋ ๋นผ๊ณ 2์ 3๊ฐ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค. => 5x + 1 = 5(x - 1) + (2 * 3)
๋ฐ๋ผ์ anwer = (x - 1) + 3 = x + 2 - ๋๋จธ์ง๊ฐ 2์ผ ๊ฒฝ์ฐ
2์์ ํ๋ ์ถ๊ฐํด์ ๊ฑฐ์ฌ๋ฌ ์ค ์ ์์ผ๋ฏ๋ก answer = x + 1 - ๋๋จธ์ง๊ฐ 3์ผ ๊ฒฝ์ฐ
5์์ ํ ๋นผ๊ณ 2์์ 4๊ฐ ์ถ๊ฐํด์ผ ํฉ๋๋ค. => 5x + 3 = 5(x - 1) + (2 * 4)
๋ฐ๋ผ์ answer = (x - 1) + 4 = x + 3 - ๋๋จธ์ง๊ฐ 4์ผ ๊ฒฝ์ฐ
2์ ๋ ๊ฐ๋ฅผ ์ถ๊ฐํด์ ๊ฑฐ์ฌ๋ฌ ์ค ์ ์์ผ๋ฏ๋ก answer = x + 2
์์ค์ฝ๋
n = int(input())
if n == 1 or n == 3: # ๊ฑฐ์ฌ๋ฌ ์ค ์ ์์
answer = -1
else:
answer = n // 5
n %= 5
if n == 1 or n == 4:
answer += 2
elif n == 2:
answer += 1
elif n == 3:
answer += 3
print(answer)
728x90
'Algorithm > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค(BOJ) / Python] 1260๋ฒ: DFS์ BFS (0) | 2021.03.15 |
---|---|
[๋ฐฑ์ค(BOJ) / Python] 1946๋ฒ: ์ ์ ์ฌ์ (0) | 2021.03.09 |
[๋ฐฑ์ค BOJ / C++] 2504๋ฒ: ๊ดํธ์ ๊ฐ (0) | 2021.01.13 |
[๋ฐฑ์ค BOJ / C++] 1541๋ฒ: ์์ด๋ฒ๋ฆฐ ๊ดํธ (0) | 2020.12.29 |
[๋ฐฑ์ค BOJ / C++] 1138๋ฒ: ํ ์ค๋ก ์๊ธฐ (0) | 2020.12.29 |