Submission #2873093
Source Code Expand
using System; using System.Collections.Generic; using System.Linq; using static System.Console; namespace AtCorder { public class Program { public static void Main() { int n = int.Parse(ReadLine()); var list = ReadLine().Split().Select(x => int.Parse(x)) .ToList(); // 累積和を使う var sum = new List<double>(); sum.Add(list[0]); for (int i = 1; i < n; i++) { sum.Add(sum[i - 1] + list[i]); } var ans = double.MaxValue; var list2 = new double[4]; // 中央の区切りは全探索 // 中央の区切りが移動した場合は、計算済みの左区切りと右区切りを利用する int left = 0; int right = 2; for (int i = 1; i < n - 2; i++) { // 左区間の区切り while (left < i && // sum[left + 1] - (sum[i] - sum[left + 1]) = 2 * sum[left + 1] - sum[i] // sum[left] - (sum[i] - sum[left]) = sum[left] - sum[i] + sum[left] = 2 * sum[left] - sum[i] // 境界を求める。一つ先が減っているなら、次へ移動する。 Math.Abs(2 * sum[left + 1] - sum[i]) < Math.Abs(2 * sum[left] - sum[i])) { left++; } // 右区間の区切り while (right < n && // (sum[right] - sum[i]) - (sum[n-1] - sum[right]) = sum[right] - sum[i] - sum[n-1] - sum[right] = 2 * sum[right] - sum[i] - sum[n-1] Math.Abs(2 * sum[right + 1] - sum[i] - sum[n - 1]) < Math.Abs(2 * sum[right] - sum[i] - sum[n - 1])) { right++; } list2[0] = sum[left]; list2[1] = sum[i] - sum[left]; list2[2] = sum[right] - sum[i]; list2[3] = sum[n - 1] - sum[right]; ans = Math.Min(ans, list2.Max() - list2.Min()); } WriteLine(ans); } } }
Submission Info
Submission Time | |
---|---|
Task | D - Equal Cut |
User | ayyubid |
Language | C# (Mono 4.6.2.0) |
Score | 600 |
Code Size | 1755 Byte |
Status | AC |
Exec Time | 180 ms |
Memory | 36316 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_30.txt, subtask_1_31.txt, subtask_1_32.txt, subtask_1_33.txt, subtask_1_34.txt, subtask_1_35.txt, subtask_1_36.txt, subtask_1_37.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 24 ms | 11348 KB |
sample_02.txt | AC | 24 ms | 11348 KB |
sample_03.txt | AC | 24 ms | 11348 KB |
subtask_1_01.txt | AC | 24 ms | 11348 KB |
subtask_1_02.txt | AC | 180 ms | 35036 KB |
subtask_1_03.txt | AC | 90 ms | 25824 KB |
subtask_1_04.txt | AC | 136 ms | 29148 KB |
subtask_1_05.txt | AC | 24 ms | 9300 KB |
subtask_1_06.txt | AC | 41 ms | 15072 KB |
subtask_1_07.txt | AC | 108 ms | 25824 KB |
subtask_1_08.txt | AC | 74 ms | 22368 KB |
subtask_1_09.txt | AC | 104 ms | 25440 KB |
subtask_1_10.txt | AC | 129 ms | 31452 KB |
subtask_1_11.txt | AC | 151 ms | 26972 KB |
subtask_1_12.txt | AC | 87 ms | 25568 KB |
subtask_1_13.txt | AC | 113 ms | 29920 KB |
subtask_1_14.txt | AC | 49 ms | 14560 KB |
subtask_1_15.txt | AC | 40 ms | 13152 KB |
subtask_1_16.txt | AC | 89 ms | 25304 KB |
subtask_1_17.txt | AC | 82 ms | 22368 KB |
subtask_1_18.txt | AC | 27 ms | 9440 KB |
subtask_1_19.txt | AC | 138 ms | 32732 KB |
subtask_1_20.txt | AC | 178 ms | 34860 KB |
subtask_1_21.txt | AC | 98 ms | 24672 KB |
subtask_1_22.txt | AC | 77 ms | 24288 KB |
subtask_1_23.txt | AC | 151 ms | 35856 KB |
subtask_1_24.txt | AC | 170 ms | 30428 KB |
subtask_1_25.txt | AC | 163 ms | 28380 KB |
subtask_1_26.txt | AC | 164 ms | 32220 KB |
subtask_1_27.txt | AC | 164 ms | 36316 KB |
subtask_1_28.txt | AC | 162 ms | 30428 KB |
subtask_1_29.txt | AC | 160 ms | 32220 KB |
subtask_1_30.txt | AC | 167 ms | 30172 KB |
subtask_1_31.txt | AC | 164 ms | 30428 KB |
subtask_1_32.txt | AC | 163 ms | 30428 KB |
subtask_1_33.txt | AC | 166 ms | 32220 KB |
subtask_1_34.txt | AC | 146 ms | 27484 KB |
subtask_1_35.txt | AC | 150 ms | 31580 KB |
subtask_1_36.txt | AC | 144 ms | 29532 KB |
subtask_1_37.txt | AC | 152 ms | 33628 KB |