結果

問題 No.609 Noelちゃんと星々
ユーザー okayunonaha
提出日時 2017-12-09 01:44:47
言語 D
(dmd 2.109.1)
結果
WA  
実行時間 -
コード長 775 bytes
コンパイル時間 885 ms
コンパイル使用メモリ 114,032 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-12 22:55:50
合計ジャッジ時間 2,157 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other WA * 25
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import std.stdio;
import std.algorithm;
import std.array;
import std.bigint;
import std.conv;
import std.math;
import std.range;
import std.string;
import std.typecons;
long diffSum(long[] arr, long p) {
long ret;
foreach(a; arr) ret += (p - a).abs;
return ret;
}
void main() {
int N = readln.chomp.to!int;
auto Y = readln.chomp.split.map!(to!long).array;
auto t = reduce!(min, max)(Y); //
long lb = t[0], rb = t[1] + 1, mid;
long ans = Y.diffSum(reduce!("a + b")(0L, Y) / N);
/*
while (rb - lb > 1) {
mid = (lb + rb) / 2;
long dsum = Y.diffSum(mid);
if (ans < dsum) {
rb = mid;
}
else {
ans = dsum;
lb = mid;
}
}
*/
//ans = ans.min(Y.diffSum(lb).min(Y.diffSum(rb)));
ans.writeln;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0