ํฐ์คํ ๋ฆฌ ๋ทฐ
728x90
๋ฐ์ํ
๋ฌธ์
๋ฌธ์ ํ์ด
์ต๋ ๊ณต์ฝ์๋ฅผ ๊ตฌํ ์ ์๋ค๋ฉด ์ฝ๊ฒ ํ ์ ์๋ ๋ฌธ์ ์ด๋ค. ๋์ ์์น์ ๋์๋ค์ ์์น ์ฐจ์ด๋ฅผ ๊ณ์ฐํ๋ค, ์ ์ฒด์ ์์น์์ ์ต๋ ๊ณต์ฝ์๋ฅผ ์ฐพ์์ ๋ฐํํ๋ฉด ๋ฌธ์ ์ ์ ๋ต์ด ๋๋ค. ์ต๋ ๊ณต์ฝ์๋ฅผ ๊ตฌํ ๋ ์ธ ์์ ์ต๋ ๊ณต์ฝ์๋ฅผ ๊ตฌํ๋ค๊ณ ํ๋ฉด a, b์ ๋ํ ์ต๋ ๊ณต์ฝ์๋ฅผ ๊ตฌํ๊ณ , ๊ตฌํด์ง ์ต๋ ๊ณต์ฝ์์ c์ ์ต๋ ๊ณต์ฝ์๋ฅผ ๊ตฌํ๋ฉด a, b, c์ ์ต๋ ๊ณต์ฝ์์ ๊ฐ์์ง๋ค. ์ด ์ฑ์ง์ ํ์ฉํ์ฌ ์ฝ๋๋ฅผ ๊ตฌํํ๋ฉด ๊ฐ๋จํ๊ฒ ๋ฌธ์ ๋ฅผ ํ ์ ์๋ค.
์ฝ๋
from sys import stdin
def gcd(a, b):
if a < b:
a, b = b, a
while b:
a, b = b, a % b
return a
if __name__ == "__main__":
n, s = map(int, stdin.readline().split())
brothers = list((map(int, stdin.readline().split())))
dist = []
for location in brothers:
dist.append(abs(location - s))
answer = dist[0]
if len(dist) > 1:
for d in dist:
answer = gcd(answer, d)
print(answer)
728x90
๋ฐ์ํ
'๐จโ๐ป ์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค: 2089 -2์ง์ (0) | 2020.06.26 |
---|---|
๋ฐฑ์ค: 17103 ๊ณจ๋๋ฐํ ํํฐ์ (0) | 2020.06.26 |
๋ฐฑ์ค: 2004 ์กฐํฉ 0์ ๊ฐ์ (0) | 2020.06.25 |
๋ฐฑ์ค: 1676 ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ (0) | 2020.06.25 |
๋ฐฑ์ค: 6588 ๊ณจ๋๋ฐํ์ ์ถ์ธก (0) | 2020.06.25 |
๋๊ธ
๊ธ ๋ณด๊ดํจ
์ต๊ทผ์ ์ฌ๋ผ์จ ๊ธ
์ต๊ทผ์ ๋ฌ๋ฆฐ ๋๊ธ