길이가 N인 정수 수열 두 개가 주어진다. 두 수열의 흐릿함은 다음과 같이 계산한다. 두 번째 수열을 뒤집은 다음, 같은 위치에 있는 두 수를 곱하고, 그 곱을 모두 더한다.
| 3 | -4 | -3 | -2 | 2 | 0 |
|---|---|---|---|---|---|
| -3 | 0 | 5 | -1 | 3 | 2 |
예를 들어 위 두 수열의 흐릿함은 3×2+(−4)×3+(−3)×(−1)+(−2)×5+2×0+0×(−3)=−13 이다.
이제 앞에서부터 B개, 뒤에서부터 E개의 열을 지워서 흐릿함을 최대로 만들려고 한다. B와 E는 0일 수도 있으며, 열을 지울 때는 두 수열에서 같은 위치를 동시에 지운다. 남는 열이 하나 이상이어야 하므로 B+E<N이다.
흐릿함을 최대로 만드는 B, E와 그때의 흐릿함을 구하시오.
첫째 줄에 수열의 길이 N (1≤N≤2000)이 주어진다.
다음 두 줄에 각각 수열이 하나씩, 공백으로 구분되어 주어진다. 모든 수는 −1000 이상 1000 이하의 정수이다.
첫째 줄에 흐릿함을 최대로 만드는 B와 E를 공백으로 구분하여 출력한다 (0≤B, 0≤E, B+E<N).
이러한 (B,E)가 여러 개라면 B가 가장 작은 것을, B가 같다면 E가 가장 작은 것을 출력한다.
둘째 줄에 흐릿함의 최댓값을 출력한다.