hdu,2050,折线分割平面

分割平面的个数=交点个数+顶点个数+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
可以得出公式f(n)=2n^2-n+1
代码:
#include <stdio.h>
int main()
{
       int i,j,n,m,t;
      scanf("%d",&t);
      while(t--)
      {
          scanf("%d",&n,&m);
         
          printf("%d\n",2*n*n-n+1);
       }
       return 0;
}
 
本文来源于网络小筑 http://www.iwebtrados.com.cn/ , 原文地址:http://www.iwebtrados.com.cn/post/237.html


 

 


 

你可能感兴趣的:(HDU)