#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
#define N 10000000 + 10
using namespace std;
ll n,m,dp[N];
int main()
{
scanf("%lld",&n);
m=(n*(n+1))/2;
if(m%2)
{
cout<<0;
return 0;
}
m/=2;
dp[0]=1;
for(int i=1;i<=n;i++)
for(int j=m;j>=i;j--)//数组压缩
dp[j]+=dp[j-i];
cout<<dp[m]/2;//一定注意最后除以2
return 0;
}
/**************************************************************
Problem: 1944
User: admin
Language: C++
Result: Accepted
Time:41 ms
Memory:80200 kb
****************************************************************/