結果

問題 No.275 中央値を求めよ
ユーザー Takuya Ito
提出日時 2022-12-10 13:29:06
言語 TypeScript
(5.7.2)
結果
WA  
実行時間 -
コード長 911 bytes
コンパイル時間 8,053 ms
コンパイル使用メモリ 228,416 KB
実行使用メモリ 44,656 KB
最終ジャッジ日時 2024-12-31 16:47:51
合計ジャッジ時間 11,991 ms
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2 WA * 1
other AC * 24 WA * 14
権限があれば一括ダウンロードができます

ソースコード

diff #

function Main(input: string): void {
  // 入力(2行)を受け取り、扱いやすいように処理
  const inputArr = input.split('\n');
  const numCount = parseInt(inputArr[0], 10);
  const nums = inputArr[1].split(' ')
                          .map(str => parseInt(str, 10))
                          .sort((a, b) => a - b);

  // 数値の数が偶数なら、中央に近い2つの値(length/2 番目とその1つ後ろ)の平均
  //         奇数なら、中央値の切り上げ 番目の値
  let median = 0;
  if (numCount % 2 == 0) {
    median = (nums[(numCount / 2) - 1] + nums[numCount / 2]) / 2
  } else {
    median = nums[Math.ceil(numCount / 2)];
  }

  // 少数第一位までにする(10倍した数で四捨五入して、それを1/10して少数桁を1つだけ作る)
  console.log(Math.round(median * 10) / 10);
}

Main(require("fs").readFileSync("/dev/stdin", "utf8"));
0