結果

問題 No.275 中央値を求めよ
ユーザー f Ox
提出日時 2021-04-14 21:43:20
言語 JavaScript
(node v23.5.0)
結果
WA  
実行時間 -
コード長 798 bytes
コンパイル時間 33 ms
コンパイル使用メモリ 6,688 KB
実行使用メモリ 41,464 KB
最終ジャッジ日時 2024-06-30 20:31:39
合計ジャッジ時間 4,125 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1 WA * 2
other AC * 9 WA * 29
権限があれば一括ダウンロードができます

ソースコード

diff #

function Main(input) {
  let data = input.split("\n");
  const N = Number(data[0]);
  let A = data[1].split(" ");
  let numsA = A.map(Number); // 配列を文字列から数値に変換する。同時にソート済み。
  // let sortNumsA = numsA.sort((a,b)=>a-b);
  // ↑この上の行でmap(Number)をすることでソートされている。よって、ソート関数は不要。
  
  if (N<=1) {
      console.log(Number(A));
  } else if (N%2===1) { // 奇数なら丁度真ん中がメジアン
    console.log(numsA[Math.floor((N/2)-1)+1]);
  } else if (N%2===0) { // 偶数なら間2つの平均値がメジアン
    let bellowM = numsA[(N/2)-1];
    let upperM = numsA[(N/2)];
    console.log((bellowM + upperM)/2);
  } 



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