您的位置:首页 > 其它

HDOJ2050(折角划分平面)

2013-04-09 16:31 176 查看
首先,先推理直线划分面的情况。

当直线数目为0时,平面数目为1

当直线数目为1时,平面数目为2

依次类推,可得



可以发现,这是一个数列。

f
=f[n-1]+n;

但是,这只是直线的,而题目要求是折角的,变化如下:



平面数减少了2!

下附AC代码:

/*HDOJ1005
作者:陈佳润
2013-04-09
*/
#include<iostream>
using namespace std;
long line[10005];
int main(){
int i,k,time,n;
long int t;
line[0]=1;
line[1]=2;
k=3;
t=4;
for(i=2;i<=10000;i++){//预处理,先算出所以情况
t+=k;
k++;
t+=k;
k++;
line[i]=t-2*i;
}
cin>>time;
while(time--){
cin>>n;
cout<<line
<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: