ACM-递归递推练习B-王小二切饼

来源:互联网 发布:网店优化 编辑:程序博客网 时间:2024/06/04 17:40

(欢迎阅读我的博客,如发现错误或有建议请评论留言,谢谢。)

题目要求:

Description

王小二自夸刀工不错,有人放一张大的煎饼在砧板上,问他:“饼不许离开砧板,切n(1<=n<=100)刀最多能分成多少块?”

Input

输入切的刀数n。

Output

输出为切n刀最多切的饼的块数。

Sample Input

100

Sample Output

5051

题目思路:

很明显是个递推问题。而且不难想到,当切下的这一刀将之前所有切痕切断,则所得的饼的块数最多。所以当i>=2时有递推关系a[i]=i+a[i-1];

代码如下:

#include<iostream>
using namespace std;
int main()
{
    int n,a[101],i;
    while(cin>>n)
    {
        a[1]=2;
        for(i=2;i<=n;i++)
            a[i]=i+a[i-1];
            cout<<a[n]<<endl;
    }
}





0 0
原创粉丝点击