#include <iostream>
#include <sstream>
#include <vector>
#define UNUSED(x) (void)(x)
int makeEven(int v)
{
return (v/2)*2;
}
int computeBunnyPopulation(int initNbBunnies)
{
int nbAdultBunnies = initNbBunnies;
int nbTeenBunnies = 0;
int nbChildBunnies = 0;
for(unsigned int i=15; i<365; i+=15)
{
// Bunnies grow up
nbAdultBunnies += static_cast<int>(nbTeenBunnies*0.7);
nbTeenBunnies = nbChildBunnies;
nbChildBunnies = 0;
if(i % 30 == 0)
{
// Plague
nbAdultBunnies = static_cast<int>(nbAdultBunnies*0.75);
nbTeenBunnies = static_cast<int>(nbTeenBunnies*0.75);
nbChildBunnies = static_cast<int>(nbChildBunnies*0.75);
}
nbChildBunnies += static_cast<int>(makeEven(nbAdultBunnies)*0.9);
}
return nbAdultBunnies + nbTeenBunnies + nbChildBunnies;
}
int main(int argc, char* argv[])
{
UNUSED(argc);
int initNbBunnies;
std::cin >> initNbBunnies;
std::cout << computeBunnyPopulation(initNbBunnies);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPHZlY3Rvcj4KCiNkZWZpbmUgVU5VU0VEKHgpICh2b2lkKSh4KQoKaW50IG1ha2VFdmVuKGludCB2KQp7CiAgICByZXR1cm4gKHYvMikqMjsKfQoKaW50IGNvbXB1dGVCdW5ueVBvcHVsYXRpb24oaW50IGluaXROYkJ1bm5pZXMpCnsKCWludCBuYkFkdWx0QnVubmllcyA9IGluaXROYkJ1bm5pZXM7CglpbnQgbmJUZWVuQnVubmllcyA9IDA7CglpbnQgbmJDaGlsZEJ1bm5pZXMgPSAwOwoKCWZvcih1bnNpZ25lZCBpbnQgaT0xNTsgaTwzNjU7IGkrPTE1KQoJewoJCS8vIEJ1bm5pZXMgZ3JvdyB1cAoJCW5iQWR1bHRCdW5uaWVzICs9IHN0YXRpY19jYXN0PGludD4obmJUZWVuQnVubmllcyowLjcpOwoJCW5iVGVlbkJ1bm5pZXMgPSBuYkNoaWxkQnVubmllczsKCQluYkNoaWxkQnVubmllcyA9IDA7CgoJCWlmKGkgJSAzMCA9PSAwKQoJCXsKCQkJLy8gUGxhZ3VlCgkJCW5iQWR1bHRCdW5uaWVzID0gc3RhdGljX2Nhc3Q8aW50PihuYkFkdWx0QnVubmllcyowLjc1KTsKCQkJbmJUZWVuQnVubmllcyA9IHN0YXRpY19jYXN0PGludD4obmJUZWVuQnVubmllcyowLjc1KTsKCQkJbmJDaGlsZEJ1bm5pZXMgPSBzdGF0aWNfY2FzdDxpbnQ+KG5iQ2hpbGRCdW5uaWVzKjAuNzUpOwoJCX0KCgkJbmJDaGlsZEJ1bm5pZXMgKz0gc3RhdGljX2Nhc3Q8aW50PihtYWtlRXZlbihuYkFkdWx0QnVubmllcykqMC45KTsKCX0KCglyZXR1cm4gbmJBZHVsdEJ1bm5pZXMgKyBuYlRlZW5CdW5uaWVzICsgbmJDaGlsZEJ1bm5pZXM7Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyKiBhcmd2W10pCnsKCVVOVVNFRChhcmdjKTsKCglpbnQgaW5pdE5iQnVubmllczsKCXN0ZDo6Y2luID4+IGluaXROYkJ1bm5pZXM7CgoJc3RkOjpjb3V0IDw8IGNvbXB1dGVCdW5ueVBvcHVsYXRpb24oaW5pdE5iQnVubmllcyk7CgoJcmV0dXJuIDA7Cn0=