結果
問題 |
No.3114 0→1
|
ユーザー |
|
提出日時 | 2025-04-19 10:50:02 |
言語 | JavaScript (node v23.5.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,034 bytes |
コンパイル時間 | 684 ms |
コンパイル使用メモリ | 8,224 KB |
実行使用メモリ | 81,696 KB |
最終ジャッジ日時 | 2025-04-19 10:50:17 |
合計ジャッジ時間 | 7,729 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | -- * 3 |
other | TLE * 1 -- * 29 |
ソースコード
function Main(ldata){ let data = ldata.trim().split(/\n|\r\n/)[1]; let i = 0; while(data.match(/0100+/) != null){ l = data.match(/0100+/)[0].length; if(l % 3 == 1){ data = data.replace(/0100+/, "0110"); i += (l-1)*2 / 3; }else if(l % 3 == 2){ data = data.replace(/0100+/, "01101"); i += 1 + (l-2)*2 / 3; }else{ data = data.replace(/0100+/, "011011"); i += l*2 / 3; } } while(data.match(/00+/) != null){ l = data.match(/00+/)[0].length; if(l % 3 == 1){ data = data.replace(/00+/, "0110"); i += (l-1)*2 / 3; }else if(l % 3 == 2){ data = data.replace(/00+/, "01101"); i += (l+1)*2 / 3; }else{ data = data.replace(/00+/, "011"); i += l*2 / 3; } } while(data.match(/0(10)+/) != null){ l = data.match(/0(10)+/)[0].length; if(l % 4 == 1){ data = data.replace(/0(10)+/, "01110"); i += (l-1) / 4; }else if(l % 4 == 3){ data = data.replace(/0(10)+/, "011"); i += (l+1) / 4; } } console.log(i); } Main(require('fs').readFileSync('/dev/stdin','utf8'));