結果

問題 No.837 Noelちゃんと星々2
ユーザー brthyyjpbrthyyjp
提出日時 2020-08-27 05:40:50
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 131 ms / 2,000 ms
コード長 597 bytes
コンパイル時間 209 ms
コンパイル使用メモリ 82,324 KB
実行使用メモリ 115,456 KB
最終ジャッジ日時 2024-06-11 14:29:49
合計ジャッジ時間 3,448 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 29
権限があれば一括ダウンロードができます

ソースコード

diff #

n = int(input())
Y = list(map(int, input().split()))
Y.sort()

if len(set(Y)) == 1:
    print(1)
    exit()

from itertools import accumulate
C = [0]+Y
C = list(accumulate(C))
#print(C)

ans = 10**18
# 0~i, i+1~n-1
for i in range(n-1):
    temp = 0
    if (i+1)%2 == 1:
        m = i//2
        temp += C[i+1]-C[m+1]-(C[m]-C[0])
    else:
        m = i//2
        temp += C[i+1]-C[m+1]-(C[m+1]-C[0])
    if (n-i-1)%2 == 1:
        m = (n+i)//2
        temp += C[n]-C[m+1]-(C[m]-C[i+1])
    else:
        m = (n+i)//2
        temp += C[n]-C[m+1]-(C[m+1]-C[i+1])
    ans = min(ans, temp)
print(ans)
0