码迷,mamicode.com
首页 > 其他好文 > 详细

杭电2050

时间:2015-04-09 21:48:58      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:

 

分割平面的个数=交点个数+顶点个数+1
令f(n-1)为前n-1条折线分割的平面数,当添加第n条折线时。
因为每一条边与前n-1条折线的两条边都相交,故增加的交点数为2*2*(n-1),顶点增加1,故
f(n)=f(n-1)+4(n-1)+1
f(n-1)=f(n-2)+4(n-2)+1
....
f(2)=f(1)+4*1+1
f(1)=2
f(n)-2=4((n-1)+(n-2)+...+1)+(n-1)=4*((1+n-1)*(n-1)/2)+n-1=2(n*n-n)+n-1
f(n)=2n^2-n+1

#include<stdio.h>

int main()

{
    int n,i,sum;
    while(scanf("%d",&n)!=EOF)
    {
        while(n--)
        {
            scanf("%d",&i);
            sum=2*(i*i)-i+1;
            printf("%d\n",sum);
        }
    }
    return 0;
}

杭电2050

标签:

原文地址:http://www.cnblogs.com/fengshun/p/4411812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!