a[i]=i
b[n-1]=1
b[]的其他值,可以直接算出来。
//#include<bits/stdc++.h>
#include<stdio.h>
#include<cstring>
#include<cmath>
#include<iostream>
using namespace std;
const int MAXN=1000100;
int a[MAXN],b[MAXN];
inline void prin_d(int x)
{
if (x > 9)
{
prin_d(x / 10);
}
putchar(x % 10 + '0');
return ;
}
int main()
{
int n,sum,i;
while(~scanf("%d",&n))
{
if(n&1)
{
printf("0\n");
continue;
}
sum=3*n/2;
n--;
for(i=1;i<=n;i++)
a[i]=i;
b[n]=1;
for(i=n-1;i>=1;i--)
b[i]=sum-a[i]-b[i+1];
prin_d(a[1]);
for(i=2;i<=n;i++)
{
printf(" ");
prin_d(a[i]);
}
puts("");
prin_d(b[1]);
for(i=2;i<=n;i++)
{
printf(" ");
prin_d(b[i]);
}
puts("");
}
}