Pagini recente » Cod sursa (job #1457883) | Cod sursa (job #912680) | Cod sursa (job #1942044) | Cod sursa (job #2053146) | Cod sursa (job #205543)
Cod sursa(job #205543)
#include<stdio.h>
#define N 200005
int main(){
int a1[N],v1[N],a2[N],v2[N];
int n,i,r,q;
freopen("multimi2.in","r",stdin);
freopen("multimi2.out","w",stdout);
scanf("%d",&n);
r=1;
q=1;
if(n%4==0){
printf("0\n");
for(i=1;i<=n;i+=4){
if(q>=N-5)
a2[q++]=i;
else
a1[q++]=i;
if(r>=N-5)
v2[r++]=i+1;
else
v1[r++]=i+1;
if(r>=N-5)
v2[r++]=i+2;
else
v1[r++]=i+2;
if(q>=N-5)
a2[q++]=i+3;
else
a1[q++]=i+3;
}
printf("%d\n",q-1);
for(i=1;i<q;++i)
if(q<N-5)
printf("%d ",a1[i]);
else
printf("%d ",a2[i]);
printf("\n");
printf("%d\n",r-1);
for(i=1;i<r;++i)
if(r<N-5)
printf("%d ",v1[i]);
else
printf("%d ",v2[i]);
}
else
if(n%4==1){
printf("1\n");
a1[q++]=1;
for(i=2;i<=n;i+=4){
if(q>=N-5)
a2[q++]=i;
else
a1[q++]=i;
if(r>=N-5)
v2[r++]=i+1;
else
v1[r++]=i+1;
if(r>=N-5)
v2[r++]=i+2;
else
v1[r++]=i+2;
if(q>=N-5)
a2[q++]=i+3;
else
a1[q++]=i+3;
}
printf("%d\n",q-1);
for(i=1;i<q;++i)
if(q<N-5)
printf("%d ",a1[i]);
else
printf("%d ",a2[i]);
printf("\n");
printf("%d\n",r-1);
for(i=1;i<r;++i)
if(r<N-5)
printf("%d ",v1[i]);
else
printf("%d ",v2[i]);
}
else
if(n%4==2){
printf("1\n");
a1[q++]=1;
v1[r++]=2;
for(i=3;i<=n;i+=4){
if(q>=N-5)
a2[q++]=i;
else
a1[q++]=i;
if(r>=N-5)
v2[r++]=i+1;
else
v1[r++]=i+1;
if(r>=N-5)
v2[r++]=i+2;
else
v1[r++]=i+2;
if(q>=N-5)
a2[q++]=i+3;
else
a1[q++]=i+3;
}
printf("%d\n",q-1);
for(i=1;i<q;++i)
if(q<N-5)
printf("%d ",a1[i]);
else
printf("%d ",a2[i]);
printf("\n");
printf("%d\n",r-1);
for(i=1;i<r;++i)
if(r<N-5)
printf("%d ",v1[i]);
else
printf("%d ",v2[i]);
}
else
if(n%4==3){
printf("0\n");
a1[q++]=1;
a1[q++]=2;
v1[r++]=3;
for(i=4;i<=n;i+=4){
if(q>=N-5)
a2[q++]=i;
else
a1[q++]=i;
if(r>=N-5)
v2[r++]=i+1;
else
v1[r++]=i+1;
if(r>=N-5)
v2[r++]=i+2;
else
v1[r++]=i+2;
if(q>=N-5)
a2[q++]=i+3;
else
a1[q++]=i+3;
}
printf("%d\n",q-1);
for(i=1;i<q;++i)
if(q<N-5)
printf("%d ",a1[i]);
else
printf("%d ",a2[i]);
printf("\n");
printf("%d\n",r-1);
for(i=1;i<r;++i)
if(r<N-5)
printf("%d ",v1[i]);
else
printf("%d ",v2[i]);
}
fclose(stdin);
fclose(stdout);
return 0;
}