#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
****************************************************************/