| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 1024 MB | 241 | 101 | 84 | 47.727% |
길이가 $N$인 정수 배열 $A$가 주어진다. 집합 $S = \{1, 2, \dots, N\}$를 정의하자. 집합 $S$의 부분집합 $S'$에 대해, 다음 값의 최댓값을 구하여라.[1]
$$ \text{gcd}_A(S') + \text{gcd}_A(S \setminus S') $$
집합 $P = \{p_1, p_2, \dots, p_k\}$일 때, $\text{gcd}_A(P)$는 $A_{p_1}, A_{p_2}, \dots, A_{p_k}$의 최대공약수로 정의한다. 만약 집합 $P$가 공집합일 경우에는 $\text{gcd}_A(\varnothing) = 0$으로 정의한다.
첫 번째 줄에 정수 $N$이 주어진다. $(1 \leq N \leq 10^6)$
두 번째 줄에 $N$개의 정수 $A_1, A_2, \cdots, A_N$이 공백으로 구분되어 주어진다. $(1 \leq A_i \leq 5\ 000)$
첫 번째 줄에 $\text{gcd}_A(S') + \text{gcd}_A(S \setminus S')$의 최댓값을 출력한다.
4 2 2 4 4
6
4 2 2 2 2
4
1 5
5
[1] $A \setminus B$는 두 집합 $A$와 $B$의 차집합을 나타내는 기호이다.
Contest > BOJ User Contest > 월간 향유회 > 월간 향유회 2025. 04-05. C번