Pagini recente » Istoria paginii runda/oji-10-2/clasament | Istoria paginii runda/concurs_freshmen_3/clasament | Cod sursa (job #1003067) | Istoria paginii runda/preoji2020 | Cod sursa (job #111306)
Cod sursa(job #111306)
#include<stdio.h>
# define v 1000001
int w[v],q[v],n;
void afisare()
{
int i;
printf("%d\n",w[0]);
for (i=1; i<=w[0]; i++)
printf("%d ",w[i]);
printf("\n%d\n",q[0]);
for (i=1; i<=q[0]; i++)
printf("%d ",q[i]);
printf("\n");
}
void citire()
{
freopen("multimi2.in","r",stdin);
scanf("%d", &n);
if (n%4==0)
{
for (int i=1; i<=n; i++)
if (i%4==0 || i%4==3)
w[++w[0]]=i;
else q[++q[0]]=i;
printf("0\n");
}
else
if (n%4==1)
{
w[++w[0]]=1;
for (int i=2; i<=n; i++)
if (i%4==0 || i%4==3)
w[++w[0]]=i;
else q[++q[0]]=i;
printf("1\n");
}
else
if (n%4==2)
{
w[++w[0]]=1;
q[++q[0]]=2;
for (int i=3; i<=n; i++)
if (i%4==0 || i%4==3)
w[++w[0]]=i;
else q[++q[0]]=i;
printf("1\n");
}
else
if (n%4==3)
{
w[++w[0]]=1;
w[++w[0]]=2;
q[++q[0]]=3;
for (int i=4; i<=n; i++)
if (i%4==0 || i%4==3)
w[++w[0]]=i;
else q[++q[0]]=i;
printf("0\n");
}
afisare();
fclose(stdin);
}
int main()
{
freopen("multimi2.out","w",stdout);
citire();
fclose(stdout);
return 0;
}