數組A = [1,0,1,1,1,1,0,1,1]]; 結果將是B B = [1,0,4,3,2,1,0,2,1]; 給出了A的元素,結果爲B. A中的元素只能是0和1. 我們需要從A中的最後一個元素向後計數,如果有連續的1,那麼A和B中的元素將會是1但是連續第二次1在A中它將會在2中並且對於第三個在A中元素將會在B中爲3 但是0它將會是0.我已經嘗試了下面的方式,但我不是獲得輸出。應該從數組A中獲得數組B的正確算法
<script>
var A= [1,0,1,1,1,1,0,1,1]];
var B =[];
//var B= A.length;
var lastValueOne;
var consecutiveOnes = 0;
for (i = A.Length - 1; i >= 0; i--)
{
if (lastValueOne== false)
{
consecutiveOnes = 0;
B[i] = 0;
}
else
{
consecutiveOnes++;
B[i] = consecutiveOnes;
}
if (A[i] == 1)
{
lastValueOne = true;
}
else
{
lastValueOne = false;
}
}
//console.log(B[i]);
document.getElementById("demo").innerHTML = B;
問題是什麼?你的解決方案出了什麼問題? – Meier
我沒有得到輸出。 –
你會得到哪個輸出? – Meier