本文主要是介绍2013年北京师范大学新生程序设计竞赛网络赛--E. 干了这桶冰红茶!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
E. 干了这桶冰红茶!
BNUCIST的HWQ大神特别钟爱冰红茶这种神棍的饮料,有一天打Dota暴虐他寝室的WL后,决定大喝一顿庆祝一下。他决定用一种神棍的方式来喝冰红茶,那就是每口只喝1升,或者2升,或者3升(PS:HWQ大神真的能喝这么多= =)。爱思考的HWQ突然想知道,对于一桶整数升的冰红茶,他可以有多少种方案喝光,但似乎他不能马上想出解决的办法,纠结的他不知道答案他就喝不下去了。聪明的你快帮帮他吧。
Input
输入一个整数T,代表数据组数。
对于每一组数据,输入一个整数N,1<=N<=30,表示这桶冰红茶有N升。
Output
对于每个N,输出一个整数,代表方案数。
Sample Input
1 3
Sample Output
4
Hint
对于样例,3升的冰红茶,他可以(1)每次喝1升,连喝3口;(2)第一口喝1升,第二口喝2升;(3)第一口喝2升,第二口喝1升;(4)一口就喝掉3升。所以共有4种方案。
#include <stdio.h>
int f(int n)
{int m ;if(n==1) m = 1 ;else if(n==2) m = 2 ;else if(n==3) m = 4 ;elsem = f(n-1) + f(n-2) + f(n-3) ;return m ;
}
int main()
{int i , t , n , m ;scanf("%d", &t);for(i =1 ; i <= t ; i++){scanf("%d", &n);m = f(n);printf("%d\n", m);}
}
这篇关于2013年北京师范大学新生程序设计竞赛网络赛--E. 干了这桶冰红茶!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!