HDOJ1290

题意:把一个球形蛋糕切n刀(每刀都是平面),最多切成多少块?

【这一类的问题基本上都可以这么解决。】

【如果是平面的话,就设一个公式f(n)=f(n-1)+a*n+b,然后用代入法求得a、b即可】

【本题是立体的,所以就设一个公式f(n)=f(n-1)+a*n*n+b*n+c,然后求得a、b、c即可】

【至于具体实现,可以用递归、递推、母函数法(这个不是很会)】

 

#include <stdio.h>

int main()
{
int n,a,i;
while (scanf("%d",&n)!=EOF)
{

for (i=1,a = 1;i<=n;i++)
a+=1.0/2*i*i-1.0/2*i+1;
printf("%d\n",a);
}
return 0;
}

 

posted @ 2012-04-05 15:22  ZH奶酪  阅读(472)  评论(0编辑  收藏  举报