結果
問題 | No.3 ビットすごろく |
ユーザー | monaka |
提出日時 | 2022-01-03 13:47:10 |
言語 | TypeScript (5.4.3) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 664 bytes |
コンパイル時間 | 5,997 ms |
コンパイル使用メモリ | 144,052 KB |
最終ジャッジ日時 | 2024-11-15 02:02:48 |
合計ジャッジ時間 | 6,589 ms |
ジャッジサーバーID (参考情報) |
judge1 / 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 = []; walk(1, n, minStep, 1); if(minStep[n]) { console.log(minStep[n]); } else { console.log(-1); } } function walk(now, n, minStep, step) { if(now < 1 || now > n) return; if(!minStep[now]) minStep[now] = step; if(minStep[now] < step) return; minStep[now] = step; const num = countOneBit(now); walk(now+num, n, minStep, step+1); walk(now-num, n, minStep, step+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"));