結果
| 問題 |
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'));