結果

問題 No.1318 ABCD quadruplets
コンテスト
ユーザー vjudge1
提出日時 2026-02-11 01:34:00
言語 JavaScript
(node v25.6.0)
結果
WA  
実行時間 -
コード長 1,174 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 206 ms
コンパイル使用メモリ 7,968 KB
実行使用メモリ 80,728 KB
最終ジャッジ日時 2026-02-11 01:34:12
合計ジャッジ時間 11,641 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample WA * 3
other WA * 13 TLE * 1 -- * 16
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

process.stdin.resume();
process.stdin.setEncoding("utf-8");

let inputString = '';
let currentLine = 0;

process.stdin.on('data', (inputStdin) => {
    inputString += inputStdin;
})

process.stdin.on('end', (_) => {
    inputString = inputString.trim().split('\n').map(string => {
        return string.trim();
    });

    main();
})

function readLine() {
    return inputString[currentLine++];
}

function main() {
    const [N, M] = readLine().split(' ').map(Number);

    const freq = new Map();

    // Step 1: enumerate (a, b)
    for (let a = 0; a <= M; a++) {
        for (let b = 0; b <= M; b++) {
            const s = a + b;
            const v = s * s + a * a + b * b;
            freq.set(v, (freq.get(v) || 0) + 1);
        }
    }

    const ans = new Array(N + 1).fill(0);
    const entries = [...freq.entries()];

    // Step 2: combine (a,b) with (c,d)
    for (const [v1, c1] of entries) {
        for (const [v2, c2] of entries) {
            const total = v1 + v2;
            if ((total & 1) === 0) {
                const n = total >> 1;
                if (n <= N) ans[n] += c1 * c2;
            }
        }
    }

    console.log(ans.join(' '));
}
0