해결한 사람
0
명
정답률
0.00
%
시간 제한
1000
ms
메모리 제한
245
MB
크기가 각각 n인 두 배열 A and B가 주어진다. 이 두 배열 사이의 오차 E는
로 정의된다. 배열 A에 정확히 k1번의 연산을, 배열 B에 정확히 k2번의 연산을 수행해야 한다. 한 번의 연산에서는 배열의 원소 하나를 골라 그 값을 1만큼 증가시키거나 감소시켜야 한다.
배열 A에 k1번의 연산을, 배열 B에 k2번의 연산을 수행한 후 가능한 오차의 최솟값을 출력한다.
첫 번째 줄에는 공백으로 구분된 세 정수 n (1 ≤ n ≤ 103), k1, k2 (0 ≤ k1 + k2 ≤ 103, k1 and k2 are non-negative)가 주어진다. 각각 배열의 크기와 A and B에 수행할 연산의 횟수를 나타낸다.
두 번째 줄에는 공백으로 구분된 n개의 정수 a1, a2, ..., an ( - 106 ≤ ai ≤ 106)이 주어진다. 이는 배열 A이다.
세 번째 줄에는 공백으로 구분된 n개의 정수 b1, b2, ..., bn ( - 106 ≤ bi ≤ 106)이 주어진다. 이는 배열 B이다.
배열 A에 정확히 k1번의 연산을, 배열 B에 정확히 k2번의 연산을 수행한 후 가능한
의 최솟값을 나타내는 정수 하나를 출력한다.
2 1 0
1 2
2 2
0
2 0 0
1 2
2 3
2
2 5 7
3 4
14 4
1
첫 번째 예제에서는 A와 B 어느 쪽에도 연산을 수행할 수 없다. 따라서 가능한 최소 오차는 E = (1 - 2)2 + (2 - 3)2 = 2이다.
두 번째 예제에서는 A에 정확히 한 번의 연산을 수행해야 한다. 오차를 최소화하기 위해 A의 첫 번째 원소를 1만큼 증가시킨다. 이제 이다. 이제 오차는 E = (2 - 2)2 + (2 - 2)2 = 0이다. 이것이 얻을 수 있는 가능한 최소 오차이다.
세 번째 예제에서는 사용할 수 있는 5번의 이동을 모두 사용하여 A의 첫 번째 원소를 8로 증가시킬 수 있다. 또한 사용할 수 있는 7번의 이동 중 6번을 사용하여 B의 첫 번째 원소를 8로 감소시킬 수 있다. Now 이고 이다. 이제 오차는 E = (8 - 8)2 + (4 - 4)2 = 0이지만, 배열 B에는 여전히 1번의 이동이 남아 있다. 남은 이동을 사용하여 B의 두 번째 원소를 5로 증가시키면 이고 E = (8 - 8)2 + (4 - 5)2 = 1을 얻는다.