您的位置:首页 > 其它

hoj1249-三角形

2013-09-30 18:43 225 查看
之前做过直线与折线分割平面的题,本想向那边转化,但不知道是不是吃错了药头晕的不行的原因,想了很长时间,结果还是wa了,只好看人家的思路才做出来,唉。。。

引用下:

/*
每条边最多与前面已画的(n—1)个三角形的各两条边相交,
第n个三角形每条边最多与2*(n-1)条边相交。
对于每条边,它所截出的区域(不算第n个三角形的角)有2*(n-1)-1个,
于是3条边可截出6*(n-1)-3个区域,再加上3个角即可多出6*(n-1)个区域。
能新增加6(n-1)部分。因为1个三角形时有2部分,
所以n个三角形最多将平面分成的部分数是 2+6×[1+2+…+(n—1)]
*/

最后代码备份

#include<cstdio>
using namespace std;
int main()
{
int n,num;
scanf("%d",&num);
while(num--)
{
scanf("%d",&n);
printf("%d\n",2+3*n*(n-1));
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: