Submission #4024453
Source Code Expand
from itertools import accumulate class CoeffTable: def __init__(self, n): self.n = n if n == 2: (self.p2, self.p1, self.m1, self.m2) = (0, 1, 1, 0) if n % 2 == 0: self.p1 = self.m1 = 1 self.p2 = self.m2 = (n - 1) // 2 else: self.p1 = 0 self.m1 = 2 self.p2 = (n - 1) // 2 self.m2 = (n - 2) // 2 if self.p2 + self.p1 + self.m1 + self.m2 != n: raise ValueError(f"n = {n}, {str(self)}") def reverse(self): (self.p2, self.p1, self.m1, self.m2) = ( self.m2, self.m1, self.p1, self.p2, ) def cumsum(self): return list(accumulate([self.p2, self.p1, self.m1, self.m2])) def __str__(self): return ( f"(p2, p1, m1, m2) = ({self.p2}, {self.p1}, {self.m1}, {self.m2})" ) def main(n, seq): seq = sorted(seq, reverse=True) coeff = CoeffTable(n) cm = coeff.cumsum() ans1 = ( 2 * sum(seq[0 : cm[0]]) + 1 * sum(seq[cm[0] : cm[1]]) - 1 * sum(seq[cm[1] : cm[2]]) - 2 * sum(seq[cm[2] : cm[3]]) ) coeff.reverse() rcm = coeff.cumsum() ans2 = ( 2 * sum(seq[0 : rcm[0]]) + 1 * sum(seq[rcm[0] : rcm[1]]) - 1 * sum(seq[rcm[1] : rcm[2]]) - 2 * sum(seq[rcm[2] : rcm[3]]) ) ans = max(ans1, ans2) print(ans) return if __name__ == "__main__": n = int(input()) sample = [] for _ in range(n): sample.append(int(input())) main(n, sample)
Submission Info
Submission Time | |
---|---|
Task | C - Align |
User | kitagawa1992 |
Language | Python (3.4.3) |
Score | 0 |
Code Size | 1665 Byte |
Status | RE |
Exec Time | 18 ms |
Memory | 3064 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | s1.txt, s2.txt, s3.txt |
All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, s1.txt, s2.txt, s3.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01.txt | RE | 17 ms | 2940 KB |
02.txt | RE | 17 ms | 2940 KB |
03.txt | RE | 18 ms | 2940 KB |
04.txt | RE | 17 ms | 2940 KB |
05.txt | RE | 18 ms | 2940 KB |
06.txt | RE | 18 ms | 2940 KB |
07.txt | RE | 18 ms | 3060 KB |
08.txt | RE | 18 ms | 2940 KB |
09.txt | RE | 18 ms | 2940 KB |
10.txt | RE | 18 ms | 2940 KB |
11.txt | RE | 18 ms | 2940 KB |
12.txt | RE | 18 ms | 2940 KB |
13.txt | RE | 18 ms | 2940 KB |
14.txt | RE | 18 ms | 2940 KB |
15.txt | RE | 18 ms | 3060 KB |
16.txt | RE | 18 ms | 2940 KB |
17.txt | RE | 18 ms | 2940 KB |
18.txt | RE | 18 ms | 2940 KB |
19.txt | RE | 18 ms | 2940 KB |
20.txt | RE | 18 ms | 2940 KB |
21.txt | RE | 18 ms | 2940 KB |
22.txt | RE | 18 ms | 3060 KB |
23.txt | RE | 18 ms | 2940 KB |
24.txt | RE | 17 ms | 2940 KB |
25.txt | RE | 18 ms | 2940 KB |
26.txt | RE | 18 ms | 2940 KB |
27.txt | RE | 18 ms | 2940 KB |
28.txt | RE | 18 ms | 2940 KB |
29.txt | RE | 18 ms | 3060 KB |
30.txt | RE | 18 ms | 3064 KB |
31.txt | RE | 18 ms | 2940 KB |
32.txt | RE | 17 ms | 3060 KB |
33.txt | RE | 18 ms | 2940 KB |
34.txt | RE | 18 ms | 2940 KB |
35.txt | RE | 18 ms | 2940 KB |
36.txt | RE | 18 ms | 2940 KB |
37.txt | RE | 18 ms | 2940 KB |
s1.txt | RE | 18 ms | 2940 KB |
s2.txt | RE | 17 ms | 2940 KB |
s3.txt | RE | 18 ms | 2940 KB |