【HDOJ】2047 阿牛的EOF牛肉串

递推,公式为kinds[i] = (kinds[i-1] + kinds[i-2]) * 2。考虑最后一个为E/F,有2*kinds[i-1]种情况;最后一个若为o,则倒数第二个则为E/F,则有2*kinds[i-2]种情况。两者相加,推得公式。

#include <stdio.h>

#define MAXNUM 45

unsigned long long kinds[MAXNUM] = {1, 3};

int main() {
    int n;
    int i;

    for (i=2; i<MAXNUM; ++i) {
        kinds[i] = ( kinds[i-1] + kinds[i-2] ) *2;
    }

    while (scanf("%d", &n) != EOF) {
        printf("%I64u\n", kinds[n]);
    }

    return 0;
}

 

posted on 2014-03-10 12:44  Bombe  阅读(133)  评论(0编辑  收藏  举报

导航