#include <stdio.h>

m,c,i,d,j;f(int*l,int s){while(i<s)c=l[i++]?c+1:0,m=c>m?c:m;while(j<s)if(l[j++])d=d+1;else if(d<m)while(d)l[j-1-d--]=0;else d=0;}

int main()
{
	int l[] = {1,1,1,0,0,0,1,1,1,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0};
	const int size = sizeof(l)/sizeof(l[0]);
	
	for (int i=0; i<size; i++) printf("%d,",l[i]); printf("\n");
	f(l, size);
	for (int i=0; i<size; i++) printf("%d,",l[i]); printf("\n");
	
	return 0;
}
