_
1. A
A가 \(x = n\) 위치에 있으면 \(OB\)와 \(BA\)의 차이는 \(n\)과 홀짝성이 같으면서 \(n\)이하의 모든 음이 아닌 정수가 될 수 있다. 따라서 이 안에 \(k\)가 들어오려면 \(n\)을 최소 얼마 이상 증가시켜야 하는지 계산해줄 수 있다.
2. B
\(a_i = 2, b_i = 1\)인 경우 \(c_i = 2\)이고, \(a_i = 1, b_i = 2\)인 경우 \(c_i = -2\)이며 나머지 경우 \(c_i = 0\)이다. \(c_i = 2\)인 경우를 최대한 많이 만들고 \(c_i = -2\)인 경우를 최대한 피하면 된다. 따라서 \(a_i = 2\)와 \(b_j = 1\)을 최대한 많이 매칭 시켜 주고 남은 값들 중 \(a_i = 1\)을 \(b_j \ne 2\)인 \(b_j\)와 최대한 매칭 해준 다음 남은 \(a_i = 1\)을 \(b_j = 2\)인 \(b_j\)와 매칭하여 최종 답을 계산해주면 된다.
3. C
배열의 최솟값을 mn
이라 하자. 임의의 두 수 x
와 y
가 mn
의 배수라 하면 x
와 y
의 swap은 x
와 mn
의 swap과 y
와 mn
의 swap만 사용해도 가능하며, 이때 사용되는 swap들은 문제 조건을 만족하기 때문에 최종적으로 mn
의 배수들 끼리는 swap이 가능하다.
따라서, mn
의 배수들은 Bubble Sort 같은 방법으로 정렬이 가능하며, 그렇게 정렬한 다음 mn
의 배수가 아닌 수들까지 포함한 전체 수열이 정렬되어 있는지 검사해주면 된다.