페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#8502
서브태스크

하나로 만들기 1s 1024MB

문제

길이 N1 이상 10^7 이하의 정수로 이루어진 수열이 주어진다.

우리는 다음의 작업을 원하는 만큼 반복할 수 있다.

  • 원소 하나를 선택해, 그 값을 1 증가시킨다.

모든 수들의 최대공약수가 1이 되도록 위 작업을 실행할 때, 필요한 작업 횟수의 최소값을 구해보자.

공약수란, 모든 수를 나눌 수 있는 정수를 의미하며, 최대공약수는 그런 공약수 중 가장 큰 값이다.

예를 들어 16, 20, 40의 최대공약수는 4이다.


입력

첫 줄에 수열의 길이 N이 주어진다. (2\leq N\leq 10^6)

그 다음 줄에 수열을 나타내는 N개의 정수가 공백으로 구분되어 주어진다.


출력

필요한 작업 횟수의 최솟값을 한 줄에 출력하여라.


부분문제

번호 점수 조건
#117점

N=2

#234점

N\leq 10

#311점

N\leq 1000

#438점

추가 제한 없음


예제 #1

2
15 27
1

예제 #2

3
90 84 140
2


출처

BOI 2025
로그인해야 코드를 작성할 수 있어요.