Pagini recente » Monitorul de evaluare | Cod sursa (job #458683) | Cod sursa (job #8293) | Cod sursa (job #1896101) | Cod sursa (job #613599)
Cod sursa(job #613599)
#include <stdio.h>
const char IN[]="multimi2.in",OUT[]="multimi2.out";
const int Sol[4]={0,1,1,0};
int N;
void solve(int N,int p)
{
if (N<=0) return;
if (N==1)
{
if (p==1) printf("1 ");
return;
}
if (N==2)
{
printf("%d ",p);
return;
}
if (N==3)
{
if (p==1) printf("1 2 ");
else printf("3 ");
return;
}
if (p==1) printf("%d %d ",N-3,N);
else printf("%d %d ",N-2,N-1);
solve(N-4,p);
}
int main()
{
freopen(IN,"r",stdin);
scanf("%d",&N);
fclose(stdin);
freopen(OUT,"w",stdout);
printf("%d\n",Sol[N%4]);
printf("%d\n",N/2+N%2);
solve(N,1);printf("\n");
printf("%d\n",N/2);
solve(N,2);printf("\n");
fclose(stdout);
return 0;
}