tushar
BAN USERSize of Array is given as equal. but u had taken 'a' and 'b' of unequal size. correct me if i'am wrong.
check this:
#include<stdio.h>
#include<conio.h>
#include<conio.h>
int main()
{
int a[]={1,0,1,0,0,1};
int b[]={0,1,1,1,0,0};
int i,j,max,x,y,z=1;
max=5;
int acount_1=3;
int acount_0=3;
int bcount_1=0;
int bcount_0=0;
for(i=5,j=0;i>=0,j<=5;i--,j++)
{
if(b[j]==0)
bcount_0++;
if(b[j]==1)
bcount_1++;
if(a[i]==0)
acount_0--;
if(a[i]==1)
acount_1--;
if(acount_0==bcount_0 && bcount_1==acount_1)
{
if(z)
{
max=abs(j-i);
z=0;
x=i;
y=j;
}
if(abs(j-i)>max)
{
max=abs(j-i);
x=i;
y=j;
}
}
}
printf("i=%d j=%d max=%d",x,y,max);
getch();
return 0;
}
if something wrong plzz correct me .
- tushar August 11, 2013#include<stdio.h>
#include<conio.h>
int main()
{
int i,j,k,l,temp,n;
int arr[]={1,-2,3,-4,-5,-6,-7,8,9,4,10,11,12};
int length=sizeof(arr)/sizeof(arr[0]);
for(i=0;i<length;i++)
{
if(i%2==0)
{
if(arr[i]>0)
;
else{
j=i;
while(arr[j]<0 && j<length)
j++;
if(j>=length)
;
else
{
temp=arr[j];
for(k=j;k>i;k--)
arr[k]=arr[k-1];
arr[i]=temp;
}
}
}
if(i%2!=0)
{
if(arr[i]<0)
;
else{
j=i;
while(arr[j]>0 && j<length)
j++;
if(j>=length)
;
else
{
temp=arr[j];
for(k=j;k>i;k--)
arr[k]=arr[k-1];
arr[i]=temp;
}
}
}
}
for(i=0;i<length;i++)
printf("%d ",arr[i]);
getch();
return 0;
}