#P1466. [USACO2.2] Subset Sums

[USACO2.2] Subset Sums

Problem Description

For many sets of consecutive integers from 11 through NN (1N391 \le N \le 39), one can partition the set into two sets whose sums are identical.

For example, if N=3N=3, one can partition the set {1,2,3}\{1,2,3\} in one way so that the sums of both subsets are identical:

  • {3}\{3\} and {1,2}\{1,2\}

This counts as a single partitioning. Reversing the order counts as the same partitioning and thus does not increase the count of partitions.

If N=7N=7, there are four ways to partition the set {1,2,3,,7}\{1,2,3,\ldots,7\} so that each partition has the same sum:

  • {1,6,7}\{1,6,7\} and {2,3,4,5}\{2,3,4,5\}
  • {2,5,7}\{2,5,7\} and {1,3,4,6}\{1,3,4,6\}
  • {3,4,7}\{3,4,7\} and {1,2,5,6}\{1,2,5,6\}
  • {1,2,4,7}\{1,2,4,7\} and {3,5,6}\{3,5,6\}

Given NN, print the number of ways a set containing the integers from 11 through NN can be partitioned into two sets whose sums are identical. Print 00 if there are no such ways.

Your program must calculate the answer, not look it up from a table.

Input Format

A single line with a single integer NN.

Output Format

A single line with a single integer that tells how many same-sum partitions can be made from the set {1,2,,N}\{1,2,\ldots,N\}. The output should be 00 if there are no ways to make a same-sum partition.

7

4

Hint

USACO Training Section 2.2.