poj2661

简单题

View Code
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;

int n;
int f[] =
{ 3, 5, 8, 12, 20, 34, 57, 98, 170, 300, 536, 966, 1754, 3210, 5910, 10944, 20366, 38064, 71421, 134480, 254016};

int main()
{
//freopen("t.txt", "r", stdin);
while (scanf("%d", &n), n)
{
n = (n - 1960) / 10;
printf("%d\n", f[n]);
}
// n = 1960;
// while (n <= 2160)
// {
// int m = (n - 1960) / 10 + 2;
// m = 1 << m;
// double sum = 0;
// int i = 0;
// while (sum < m)
// {
// i++;
// sum += log(i) / log(2);
// }
// printf(",%d", i - 1);
// n += 10;
// }
return 0;
}

你可能感兴趣的:(poj)