#include <stdlib.h>
#include <stdio.h>
#include <stdint.h>
uint64_t binom(uint64_t n, uint64_t k)
{
uint64_t c = 1u;
uint64_t i;
for (i = 0; i < k; i++) {
c *= n - i;
c /= i + 1;
}
return c;
}
uint64_t possibilities(uint64_t n)
{
uint64_t sum = 0u;
for (uint64_t i = 0; i <= n / 2; i++) {
sum += binom(n - i, i);
}
return sum;
}
int main(void)
{
for (uint64_t n = 1; n < 81; n++) {
uint64_t p = possibilities(n);
(long long unsigned) n,
(long long unsigned) p);
}
return 0;
}
I2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0ZGludC5oPgoKCgp1aW50NjRfdCBiaW5vbSh1aW50NjRfdCBuLCB1aW50NjRfdCBrKQp7CiAgICB1aW50NjRfdCBjID0gMXU7CiAgICB1aW50NjRfdCBpOwogICAgCiAgICBmb3IgKGkgPSAwOyBpIDwgazsgaSsrKSB7CiAgICAgICAgYyAqPSBuIC0gaTsKICAgICAgICBjIC89IGkgKyAxOwogICAgfQogICAgCiAgICByZXR1cm4gYzsKfQoKdWludDY0X3QgcG9zc2liaWxpdGllcyh1aW50NjRfdCBuKQp7CiAgICB1aW50NjRfdCBzdW0gPSAwdTsKCiAgICBmb3IgKHVpbnQ2NF90IGkgPSAwOyBpIDw9IG4gLyAyOyBpKyspIHsKICAgICAgICBzdW0gKz0gYmlub20obiAtIGksIGkpOwogICAgfQogICAgCiAgICByZXR1cm4gc3VtOwp9CgppbnQgbWFpbih2b2lkKQp7CiAgICBmb3IgKHVpbnQ2NF90IG4gPSAxOyBuIDwgODE7IG4rKykgewogICAgICAgIHVpbnQ2NF90IHAgPSBwb3NzaWJpbGl0aWVzKG4pOwogICAgICAgIAogICAgICAgIHByaW50ZigiJWxsdTogJWxsdVxuIiwKICAgICAgICAgICAgKGxvbmcgbG9uZyB1bnNpZ25lZCkgbiwKICAgICAgICAgICAgKGxvbmcgbG9uZyB1bnNpZ25lZCkgcCk7CiAgICB9CiAgICAKICAgIHJldHVybiAwOwp9Cg==