Цитата
В моем коде arr [a [i]], созданный для случая, я увеличиваю только arr [0], но вместо увеличения только arr [0] он будет увеличивать всеarr [] почему это происходит, дайте ответ, пожалуйста.
for(i=0;i<n-1;i++)
{
printf("*a[i] %d occu%d*\n",a[i],arr[a[i]]);
if(arr[a[i]]==1)
{
a[i+1]=0;
arr[a[i+1]]+=1;
}
else if(arr[a[i]]>1)
{
for(j=i-1;j>=0;j--)
{
if(a[j]==a[i])
{
last_index=j;
}
}
a[i+1]=i-last_index;
arr[a[i+1]]+=1;
}
}
Цитата
out put for n=5 is
*a[i] 0 occu1*
*a[i] 0 occu2*
*a[i] 1 occu2*
*a[i] 2 occu2*
but expected is
*a[i] 0 occu1*
*a[i] 0 occu2*
*a[i] 1 occu1*
*a[i] 2 occu1*
enter code here