문제 3624 · 바이트 V
관측 장치의 공통 눈금
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
천문대는 여러 관측 장치에 같은 길이의 시간 눈금을 설정하려 한다. 각 장치는 한 번의 촬영을 진행하는 동안 정해진 시간마다 상태를 기록한다. 장치마다 촬영 시간은 다르지만, 관리의 편의를 위해 상태 기록 사이의 간격은 모든 장치에서 동일하게 사용하려 한다. 촬영 시간과 기록 간격은 모두 초 단위의 양의 정수로만 다룬다. 촬영 시간이 A초이고 기록 간격이 D초라면, 장치는 촬영을 시작한 순간부터 D초, 2D초, 3D초가 지난 순간마다 상태를 기록한다. 촬영이 끝나는 순간에도 정확히 한 번의 기록이 남아야 하므로, A가 D로 나누어떨어질 때만 그 간격을 사용할 수 있다. 시작 순간의 기록은 이 조건에 영향을 주지 않으며, 촬영이 끝난 뒤에 기록을 추가하는 방식은 허용하지 않는다. 천문대에는 촬영 시간이 정해진 장치가 N개 있다. 공통 기록 간격 D를 선택하려면 모든 장치의 촬영 시간이 D로 나누어떨어져야 한다. 어느 한 장치에서라도 촬영 종료 시각과 기록 시각이 맞지 않으면 해당 간격은 사용할 수 없다. 서로 다른 장치의 촬영 시간이 같을 수 있으며, 같은 시간이 여러 번 주어져도 각각의 장치에 동일한 조건을 적용한다. 담당자는 가능한 간격 중 하나를 바로 선택하는 대신, 선택할 수 있는 서로 다른 간격의 수를 먼저 알아보려 한다. 여기서 간격 두 개가 다르다는 것은 초 단위의 정숫값이 다르다는 뜻이다. 같은 간격을 여러 장치에서 사용할 수 있더라도 한 가지 선택으로만 센다. 가능한 간격을 실제로 나열하거나, 각 장치에서 생성되는 기록의 개수를 계산할 필요는 없다. 기록 간격은 반드시 양수이므로 0초나 음수 간격은 고려하지 않는다. 촬영 시간은 모두 양의 정수이므로 1초 간격은 언제나 사용할 수 있다. 따라서 가능한 간격이 하나도 없는 입력은 주어지지 않는다. 장치가 하나뿐인 경우에도 같은 정의를 사용한다. 모든 장치의 촬영 시간을 읽고, 공통으로 사용할 수 있는 양의 정수 기록 간격이 몇 가지인지 구하는 프로그램을 작성한다.
입력
첫째 줄에 장치의 수인 정수 N이 주어진다. 1 ≤ N ≤ 50,000이다. 둘째 줄에 각 장치의 촬영 시간 A_1, A_2, …, A_N이 공백으로 구분되어 주어진다. 각 A_i는 1 이상 1,000,000 이하의 정수이며 단위는 초이다.
출력
모든 촬영 시간을 나누어떨어지게 하는 양의 정수 D의 개수를 정수 하나로 출력한다.
예제 입력 1
3 42 70 98
예제 출력 1
4
예제 입력 2
2 25 36
예제 출력 2
1
예제 입력 3
1 81
예제 출력 3
5
힌트 펼치기
- 모든 촬영 시간의 공약수는 그 시간들의 최대공약수의 약수와 같다.
- 약수는 짝을 이루므로 최대공약수의 제곱근까지만 확인할 수 있다. 완전제곱수의 제곱근은 한 번만 센다.
관련 서재 장
알고리즘 분류
정수론최대공약수약수풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |