백준 Python 2485 가로수

Seohyun·2023년 7월 29일
0

알고리즘

목록 보기
1/36

심은 나무 간의 간격을 저장하고 간격들의 최대공약수를 구하면 된다.

  • from math import gcd
from math import gcd
import sys

n = int(sys.stdin.readline())

gap = []

init = int(sys.stdin.readline())

for _ in range(n-1):
    inp = int(sys.stdin.readline())
    gap.append(inp - init)
    init = inp

g = gap[0]

for _ in range(1, len(gap)):
    g = gcd(g, gap[_])

cnt = 0

for _ in gap:
    cnt += _ // g - 1
    
print(cnt)
profile
Hail hamster

0개의 댓글