2067.cpp

来自「哈尔滨工业大学ACM 竞赛网上在线试题集锦的源代码」· C++ 代码 · 共 40 行

CPP
40
字号
/*  This Code is Submitted by wywcgs for Problem 2067 on 2005-09-19 at 21:53:23 */ 
#include <stdio.h>

long div(int);

long num[21] = {0};

int main()
{
    int n, test;
    int i;
    
    scanf("%d", &test);
    for(i = 0; i < 21; i++) {
        num[i] = -1;
    }
    div(20);
    for(i = 0; i < test; i++) {
        scanf("%d", &n);
        printf("%ld\n", num[n]);
    }
    return 0;
}

long div(int k)
{
    int p = 0;
    
    if(k == 0 || k == 1) {
        num[0] = 1;
        num[1] = 1;
        return 1;
    } else if(k == 2) {
        num[2] = div(k-1) + div(k-2);
        return num[2];
    } else {
        num[k] = div(k-1) + div(k-2) + div(k-3);
        return num[k];
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?