홍우진의 개발 일기장
[백준] 2485번: 가로수/ 파이썬 본문
728x90
반응형
문제 링크
https://www.acmicpc.net/problem/2485
풀이 코드
import sys
from math import gcd
N = int(sys.stdin.readline())
a = int(sys.stdin.readline())
arr = []
for i in range(N-1):
num = int(sys.stdin.readline())
arr.append(num - a)
a = num
g = arr[0]
for j in range(1, len(arr)):
g = gcd(g, arr[j])
result = 0
for each in arr:
result += each // g - 1
print(result)
코드 해석
가로수들 사이의 값을 저장할 배열을 만든 뒤 가로수들 사이의 간격 저장한다.
arr에 들어있는 모든 수들의 최대공약수 찾은 후 둘 사이에 심을 가로수 개수를 찾는다.
개수 = 간격 // 최대공약수 - 1
728x90
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 11292번: 키 큰 사람/ 파이썬 (0) | 2022.09.14 |
---|---|
[백준] 13015번: 별 찍기 - 23/ 파이썬 (0) | 2022.09.13 |
[백준] 11508번: 2+1 세일/ 파이썬 (1) | 2022.09.11 |
[백준] 5555번: 반지/ 파이썬 (0) | 2022.09.10 |
[백준] 2822번: 점수 계산/ 파이썬 (0) | 2022.09.09 |
Comments