์๋ ํ์ธ์! ์ค๋์ ๋ฐฑ์ค ์จ๋ผ์ธ ์ ์ง์ 19532๋ฒ ๋ฌธ์ , “์ํ์ ๋น๋๋ฉด๊ฐ์์ ๋๋ค”์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ด ๋ฌธ์ ๋ ์ฃผ์ด์ง ์ด์ฐจ ๋ฐฉ์ ์์ ๋ง์กฑํ๋ x์ y๋ฅผ ์ฐพ๋ ๋ฌธ์ ์ ๋๋ค. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ณผ์ ๊ณผ ํจ๊ป Python์ผ๋ก ์์ฑํ ์ ๋ต ์ฝ๋๋ฅผ ์๊ฐํ๊ฒ ์ต๋๋ค.
1. ๋ฌธ์ ์ค๋ช
์ํ์ ๊ธฐ๋ณธ์ ์ธ ๊ฐ๋ ์ค ํ๋์ธ ์ด์ฐจ ๋ฐฉ์ ์์ ์ด์ฉํ์ฌ ๋ ๋ณ์ x์ y๋ฅผ ์ฐพ๋ ๋ฌธ์ ์ ๋๋ค. ์ฃผ์ด์ง ๋ฐฉ์ ์ ๋ ๊ฐ๋ฅผ ๋ง์กฑํ๋ x์ y์ ๊ฐ์ ์ฐพ๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค. ์ฃผ์ด์ง ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค
a * x + b * y = c
d * x + e * y = f
์ฌ๊ธฐ์ a, b, c, d, e, f๋ ๋ชจ๋ ์ ์์ ๋๋ค. ์ด ๋ฐฉ์ ์์ ๋ง์กฑํ๋ x์ y๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ ๋๋ค.
๋ฐฑ์ค ๋ฌธ์ URL
์ํ์ ๋น๋๋ฉด๊ฐ์์ ๋๋ค
2. ์ ๊ทผ๋ฒ
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์๋์ ๊ฐ์ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํฉ๋๋ค:
1. ๋ชจ๋ ๊ฐ๋ฅํ x์ y ๊ฐ์ ํ์ํฉ๋๋ค.
2. ๊ฐ x์ y ๊ฐ์ ๋ํด ๋ ๋ฐฉ์ ์์ ๋ชจ๋ ๋ง์กฑํ๋์ง ํ์ธํฉ๋๋ค.
3. ๋ง์กฑํ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ๊ทธ ๊ฐ์ ์ถ๋ ฅํ๊ณ ์ข ๋ฃํฉ๋๋ค.
3. Python ์ฝ๋
# ์ ์๊ฐ ์
๋ ฅ์ฒ๋ฆฌ
a, b, c, d, e, f = map(int, input().split())
# ์ด์ฐจ ๋ฐฉ์ ์ ์ํํ๋ ํจ์ ์ ์
def solCal(a, b, c, d, e, f):
for x in range(-999, 1000):
for y in range(-999, 1000):
if ((a * x) + (b * y) == c) and ((d * x) + (e * y) == f):
return x, y
x, y = solCal(a, b, c, d, e, f)
print(x, y)
4. ์ฝ๋ ์ค๋ช
• ์ด์ฐจ ๋ฐฉ์ ์ ์ํํ๋ ํจ์ ์ ์
def solCal(a, b, c, d, e, f):
for x in range(-999, 1000):
for y in range(-999, 1000):
if ((a * x) + (b * y) == c) and ((d * x) + (e * y) == f):
return x, y
์ด ์ฝ๋๋ ๋ชจ๋ ๊ฐ๋ฅํ ๊ฐ์ ํ์ํ๋ฉด์ ๋ ๋ฐฉ์ ์์ ๋ง์กฑํ๋ x์ y ๊ฐ์ ์ฐพ๋ ๋ฐฉ์์ผ๋ก ๋์ํฉ๋๋ค.
์ฃผ์ด์ง ์กฐ๊ฑด ๋ฒ์ ๋ด์์๋ ์ถฉ๋ถํ ํจ์จ์ ์ผ๋ก ๋ต์ ๊ตฌํ ์ ์์ต๋๋ค.
1. ์์
2. ๋ชจ๋ ๊ฐ๋ฅํ x์ y ๊ฐ์ ํ์ํฉ๋๋ค.
3. ๊ฐ x์ y ๊ฐ์ ๋ํด ๋ ๋ฐฉ์ ์์ ๋ชจ๋ ๋ง์กฑํ๋์ง ํ์ธํฉ๋๋ค.
4. ๋ง์กฑํ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ๊ทธ ๊ฐ์ ์ถ๋ ฅํ๊ณ ์ข ๋ฃํฉ๋๋ค.
5. ๋ง์กฑํ๋ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉด ๋ค์ x์ y ๊ฐ์ผ๋ก ์ด๋ํฉ๋๋ค.
6. ์ข ๋ฃ
์ด ์ฝ๋์ ์๋ ๋ฐฉ์๊ณผ ์ ๊ทผ๋ฒ์ ๋ํ ์ค๋ช ์ ๋ง์นฉ๋๋ค.
์ด ๋ฌธ์ ๋ ์์ ํ์์ ์ฌ์ฉํ์ฌ ํด๊ฒฐํ ์ ์์ผ๋ฉฐ, ์ฃผ์ด์ง ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๋ชจ๋ ๊ฐ์ ํ์ํ๋ ๊ฒ์ด ํต์ฌ์ ๋๋ค.
4. Github์ผ๋ก ํ์ธ
'๐ ์๊ณ ๋ฆฌ์ฆ > BOJ(๋ฐฑ์ค)_Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ(๋ฐฑ์ค) 14252[๊ณต์ฝ์์ด] (0) | 2024.06.15 |
---|---|
BOJ(๋ฐฑ์ค) 1978[์์ ์ฐพ๊ธฐ] (0) | 2024.06.13 |
BOJ(๋ฐฑ์ค) 2503[์ซ์ ์ผ๊ตฌ] (0) | 2024.06.07 |
BOJ(๋ฐฑ์ค) 14568[์ฌํ ๋๋ ์ฃผ๊ธฐ] (0) | 2024.06.07 |
BOJ(๋ฐฑ์ค) 1816[์ํธ ๋น๋ฐ๋ฒํธ ๊ฒ์ฆ] (0) | 2024.06.07 |