#include <iostream>
#define MIN(x, y) ((x) < (y) ? (x) : (y))
void Partition(int n, int high, int *count)
{
if (n)
for (int i = 1; i <= high; i++)
Partition(n - i, MIN(i, n - i), count);
else
(*count)++;
}
int main()
{
int n, count = 0;
std::cin » n;
Partition(n, n - 1, &count);
std::cout « count;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPiAKI2RlZmluZSBNSU4oeCwgeSkgKCh4KSA8ICh5KSA/ICh4KSA6ICh5KSkgCgp2b2lkIFBhcnRpdGlvbihpbnQgbiwgaW50IGhpZ2gsIGludCAqY291bnQpIAp7IAppZiAobikgCmZvciAoaW50IGkgPSAxOyBpIDw9IGhpZ2g7IGkrKykgClBhcnRpdGlvbihuIC0gaSwgTUlOKGksIG4gLSBpKSwgY291bnQpOyAKZWxzZSAKKCpjb3VudCkrKzsgCn0gCgppbnQgbWFpbigpIAp7IAppbnQgbiwgY291bnQgPSAwOyAKc3RkOjpjaW4gwrsgbjsgClBhcnRpdGlvbihuLCBuIC0gMSwgJmNvdW50KTsgCnN0ZDo6Y291dCDCqyBjb3VudDsgCnJldHVybiAwOyAKfQ==