結果
問題 |
No.972 選び方のスコア
|
ユーザー |
![]() |
提出日時 | 2020-01-17 23:19:06 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 916 bytes |
コンパイル時間 | 2,772 ms |
コンパイル使用メモリ | 77,620 KB |
実行使用メモリ | 60,952 KB |
最終ジャッジ日時 | 2024-06-26 00:40:15 |
合計ジャッジ時間 | 25,476 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 2 WA * 30 |
ソースコード
import java.util.*; import java.io.*; import java.math.*; public class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] li = new int[n]; long[] rsw = new long[n]; long ans = 0; for(int i = 0; i < n; i++){ li[i] = sc.nextInt(); } Arrays.sort(li); rsw[0] = li[0]; for(int i = 1; i < n; i++){ rsw[i] += li[i]+rsw[i-1]; } int n2 = n/2; for(int i = 1; i < n2+1; i++){ long tmp = rsw[i] + (rsw[n-1]-rsw[n-1-i])-(li[i]*(i*2+1)); ans = Math.max(ans,tmp); } for(int i = 0; i < n2+1; i++){ long tmp = rsw[i] + (rsw[n-1]-rsw[n-1-i]); tmp -= (li[i]*((i+1)*2)); ans = Math.max(ans,tmp); } System.out.println(ans); } }