https://www.acmicpc.net/problem/17087
문제
접근법
문제와 예제를 봤을 때는 최소 차이가 답인 거 같아서 최소 차이값만 찾아 제출했는데 틀렸다 나옴.
찾아보니 차의 절댓값들의 최대공약수를 구해야한다 나와있어 그렇게 우선 제출은 함.
근데 왜 최댓값을 구하는데 최소의 값을 찾고, 그 최소의 값들 중 최대공약수를 찾는 지 모르겠음...
[과정]
수빈의 위치와 동생들의 위치의 차를 절댓값해서 ck배열에 저장
ck배열에서의 최대공약수를 구하기
코드
import math
N,S=map(int,input().split())
A=list(map(int,input().split()))
ck=[]
ans=1000000000
for i in A:
ck.append(abs(i-S))
ans=ck[0]
for i in range(1,N):
ans=math.gcd(ck[i],ans)
print(ans)
'코딩테스트 준비 > 백준' 카테고리의 다른 글
[백준] 1212번 8진수 2진수 - 파이썬(Python) (0) | 2021.08.26 |
---|---|
[백준] 1373번 2진수 8진수 - 파이썬(Python) (0) | 2021.08.26 |
[백준] 9613번 GCD 합 - 파이썬(Python) (0) | 2021.08.23 |
[백준] 1676번 팩토리얼 0의 개수 - 파이썬(Python) (0) | 2021.08.19 |
[백준] 10872번 팩토리얼 - 파이썬(Python) (0) | 2021.08.18 |