[๋ฌธ์ ๋งํฌ] ๐
SW Expert Academy
SW ํ๋ก๊ทธ๋๋ฐ ์ญ๋ ๊ฐํ์ ๋์์ด ๋๋ ๋ค์ํ ํ์ต ์ปจํ ์ธ ๋ฅผ ํ์ธํ์ธ์!
swexpertacademy.com
ํ์ด
์ค์
- x ๋ฅผ ์ ๋์ฝ(๋ฟ 1๊ฐ)์ ๋ง๋ฆฌ ์, y ๋ฅผ ํธ์ํผ(๋ฟ 2๊ฐ)์ ๋ง๋ฆฌ ์๋ผ๊ณ ํ๋ฉด,
- x + y = M (์ด ์ง์น์ ๋ง๋ฆฌ ์๋ M์ด๋ค)
- x + 2y = N (๋ฟ์ ์ด ๊ฐ์๋ N์ด๋ค)
๐ก ์ฐ๋ฆฝ ๋ฐฉ์ ์์ ํตํด ์ ๋์ฝ(x)๊ณผ ํธ์ํผ(y)์ ๊ฐ์ ๊ณ์ฐ
- y = N - M
- x = M - y
Solution
T = int(input())
for test_case in range(1, T + 1):
N, M = map(int, input().split())
# ๋ฐฉ์ ์์ผ๋ก๋ถํฐ ์ ๋์ฝ๊ณผ ํธ์ํผ์ ์ ๊ณ์ฐ
twin_horn = N - M
unicorn = M - twin_horn
print(f"#{test_case} {unicorn} {twin_horn}")
๐ฉ๐ป ํ๊ณ
๋ชซ๊ณผ ๋๋จธ์ง๋ฅผ ์ด์ฉํ๋๋ ํ ์คํธ ์ผ์ด์ค๊ฐ ํ๋ ค์ ์๋ ์ฝ๋๋ฅผ ์ ์ถํ๋๋ฐ ํ๋ ธ๋ค๊ณ ํ๋ค. ๋ค๋ฅธ ํ ์คํธ ์ผ์ด์ค๋ก๋ ์๋ ํด๋ดค๋๋ฐ๋ ๋ค ๋๊ธธ๋ ๊ทธ๋ ๊ฒ ํธ๋ ๊ฑด ์ค ์์๋ค.์์ผ๋ก ๊ณ ์ ๋ ๋น์จ์ด ์ฃผ์ด์ง ๋ ์ฐ๋ฆฝ ๋ฐฉ์ ์์ ์ด์ฉํด๋ณด์.
ํ๋ฆฐ ํ์ด
unicorn, twin_horn = 0, 0
while N % M > 0:
quotient = N // M # ๋ชซ
division = N % M # ๋๋จธ์ง
N -= division # ๋๋จธ์ง๋ฅผ ๋ฟ์ ๊ฐ์์์ ๋นผ์ฃผ๊ธฐ
M -= quotient # ๋ชซ์ ์ง์น์ ์์์ ๋นผ์ฃผ๊ธฐ
if quotient == 1 and division == 2:
twin_horn += 1
elif quotient == 1 and division == 1:
unicorn += 1
print(f"#{test_case} {unicorn} {twin_horn + 1}")
์ ์ฝ๋๊ฐ ํ๋ฆฐ ์ด์
์ด ๋ฌธ์ ์ ์กฐ๊ฑด์์๋ ๋ฟ์ด ํ ๊ฐ ๋ฌ๋ฆฐ ์ ๋์ฝ๊ณผ ๋ฟ์ด ๋ ๊ฐ ๋ฌ๋ฆฐ ํธ์ํผ์ ์๊ฐ ํน์ ์ฐ๋ฆฝ๋ฐฉ์ ์์ ํตํด ๊ณ ์ ๋ ๋น์จ๋ก ๊ฒฐ์ ๋๋ค. ํ์ง๋ง ๋ชซ๊ณผ ๋๋จธ์ง๋ฅผ ์ด์ฉํ๋ ๋ฐฉ์์ ์ผ์ ํ ํจํด ์์ด ๋๋จธ์ง๋ฅผ ์ ๊ฑฐํ๋ฉฐ ๊ฐ์ ์กฐ์ ํ๋ ค๋ ๋ฐฉ์์ด๋ผ, ์ฐ๋ฆฝ๋ฐฉ์ ์์์ ์๊ตฌํ๋ ์ผ์ ํ ๊ด๊ณ๋ฅผ ๋ง์กฑํ์ง ๋ชปํ๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง๋ ์ ์ผํ ํด๋ฅผ ์ฐพ๋ ๊ฒ์ด ์๋๋ผ ์๋ชป๋ ๊ฐ์ ๊ณ์ ๋นผ๋ด์ด ๊ฒฐ๊ตญ ์ค๋ต์ ์ถ๋ ฅํ๊ฒ ๋๋ ๊ฒ์ด๋ค.
๋ชซ๊ณผ ๋๋จธ์ง ์ ๊ทผ์ ํ๊ณ
- ์กฐ๊ฑด๊ณผ ๊ด๊ณ์๋ ์กฐ์
- ๋ฌธ์ ์์๋ ์ ํํ ์ ๋์ฝ๊ณผ ํธ์ํผ์ ์๋ฅผ ์๊ตฌํ์ง๋ง, ๋ชซ๊ณผ ๋๋จธ์ง๋ฅผ ์ด์ฉํ ์ ๊ทผ์ ์ผ๊ด๋ ํจํด์ด ์์ผ๋ฏ๋ก ์กฐ์ ์ ๊ธฐ์ค์ด ์๋ค. ๋ฐ๋ผ์ ๋ฐ๋ณต์ ์ผ๋ก ๋๋จธ์ง๋ฅผ ๋นผ๊ณ ์กฐ๊ฑด์ ๋ง์ถ๋ ค๊ณ ํด๋, ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ์ผ์ ํ ๊ฒฐ๊ณผ๋ฅผ ์ฐพ์ ์ ์๋ค.
- ์กฐ๊ฑด์ ์ํ์ ์ผ๋ก ์ถฉ์กฑ์ํค์ง ์์
- ์ฃผ์ด์ง ๋ฌธ์ ์์๋ xx์ yy๊ฐ ํน์ ํ ๊ด๊ณ(x+y=Mx + y = M, x+2y=Nx + 2y = N)๋ฅผ ๋ง์กฑํด์ผ ํ๋ค. ํ์ง๋ง ๋ชซ๊ณผ ๋๋จธ์ง๋ฅผ ์ด์ฉํ๋ ๋ฐฉ์์ ์ด ๊ด๊ณ๋ฅผ ์ํ์ ์ผ๋ก ํด๊ฒฐํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฌ๋ฐ๋ฅธ ํด๋ฅผ ์ป์ ์ ์๋ค.
๋ฐ๋ผ์ ์ด ๋ฌธ์ ๋ ์ฐ๋ฆฝ๋ฐฉ์ ์์ ์ด์ฉํ์ฌ ์ ์ผํ ํด๋ฅผ ๊ตฌํ๋ ๋ฐฉ์์ด ์ ์ ํ๋ฉฐ, ์ด๋ฅผ ํตํด์๋ง ๋ฌธ์ ์ ์กฐ๊ฑด์ ์ถฉ์กฑํ๋ ์ ๋์ฝ๊ณผ ํธ์ํผ์ ์๋ฅผ ์ ํํ๊ฒ ๊ณ์ฐํ ์ ์๋ค.
'๐งฉ Algorithm > SWEA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [SWEA] 3499. ํผํํธ ์ ํ (Python/D3) (0) | 2024.10.29 |
|---|---|
| [SWEA] 1221. [S/W ๋ฌธ์ ํด๊ฒฐ ๊ธฐ๋ณธ] 5์ผ์ฐจ - GNS (Python/D3) (0) | 2024.10.26 |
| [SWEA] 10200. ๊ตฌ๋ ์ ์ ์ (Python/D3) (0) | 2024.10.26 |
| [SWEA] 1209. [S/W ๋ฌธ์ ํด๊ฒฐ ๊ธฐ๋ณธ] 2์ผ์ฐจ - Sum (Python/D3) (0) | 2024.10.25 |
| [SWEA] 14692. ํต๋๋ฌด ์๋ฅด๊ธฐ (Python/D3) (0) | 2024.10.25 |