升降交替数列

升降交替数列

问题描述

有一种长度为n 的特殊数列,具有如下特点:

1)第一项为1

2)每一项为123

3)数列中的项升降交替。

例如,长度为3 的特殊数列只有3条:121132131

你的任务是计算长度为n 的特殊数列的条数

输入:

输入文件有若干行,每行上有一个整数n,表示特殊数列长度1n45

输出:

对输入文件中的每个整数n,输出长度为n的特殊数列的条数

输入样例:

3

7

 

输出样例:

3

21

 

#include<stdio.h>
#include<iostream>
using namespace std;
int f[46];
int vext()
{
    f[1]=1;f[2]=2;
    for(int i=3;i<=45;i++)
    {
        f[i]=f[i-1]+f[i-2];
    }    
}  
int main()
{
    int n;
    vext();
    while(cin>>n)
    {
        cout<<f[n]<<endl;
    }   
    return 0; 
}      

原文地址:https://www.cnblogs.com/kuangbin/p/2114431.html