結果
問題 | No.3 ビットすごろく |
ユーザー | monaka |
提出日時 | 2022-01-03 14:21:23 |
言語 | TypeScript (5.4.3) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 713 bytes |
コンパイル時間 | 3,769 ms |
コンパイル使用メモリ | 145,812 KB |
最終ジャッジ日時 | 2024-04-27 05:09:32 |
合計ジャッジ時間 | 4,190 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
main.ts(32,6): error TS2580: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`.
ソースコード
function main(input) { const n = parseInt(input[0]); const minStep = []; const q = [{floor:1, step:1}]; while(q.length > 0) { const {floor, step} = q.shift(); if(floor < 1 || floor > n) continue; if(minStep[floor] <= step) continue; minStep[floor] = step; const oneBit = countOneBit(floor); q.push({floor:(floor+oneBit), step:(step+1)}); q.push({floor:(floor-oneBit), step:(step+1)}); } if(minStep[n]) { console.log(minStep[n]); } else { console.log(-1); } } function countOneBit(i) { let count = 0; while(i > 0) { if((i & 1) === 1) count++; i >>= 1; } return count; } main(require("fs").readFileSync("/dev/stdin", "utf8").split("\n"));