RGB

RGB

Description人称AC之神的QIGe最近一直忙着培养NOI高手,为了鼓励NOI高手, QiGe做了若干雨花石项链,作为对表现优秀的选手的奖励.他会挑选一个雨花石作为这串项链的开始,然后一个接一个连起来,现在他有三种颜色的雨花石,红(Red)、绿(Green)、蓝(Blue),做项链的时候他要求每相邻的2个雨花石不能相同的颜色,尽管最后一步把首尾连接起来的工作QiGe不需要去做,但也必须保证首尾2个雨花石它们是不同颜色。你知道QiGe有多少种串项链的方法吗?
Input
输入数据包含多个测试实例,每个测试实例占一行,由一个整数N组成,(0<n<=50)。
Output
对于每个测试实例,请输出全部的满足要求的排法,每个实例的输出占一行。
Sample Input
1
2
Sample Output
3
6

#include<stdio.h>
int main()
{
    int n,i;    
    long long int f[55];    
    f[1]=3;    
    f[2]=6;    
    f[3]=6;    
    while(scanf("%d",&n)!=EOF)    
    {        
    	for(i=4;i<=n;i++)            
    		f[i]=2*f[i-2]+f[i-1];        
    	printf("%lld\n",f[n]);    
    }
}

一道递归题,首先要想到这一点,然后就要找规律了,考虑最后一个是不确定的,可能n-1和1同色,那么n就有两种选择,而不同色,n就只能选一种,1.f[n-2]用来表示此时1和n-1相同,所以*2,2.f[n-1]就只需要考虑同色的情况了,加一下就ok了。
but 其实觉得题目挺诡异的譬如n==3时321 123这样不是一样的吗 (T^T)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值