hdu 2050.折线分割平面
Posted icfir
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdu 2050.折线分割平面相关的知识,希望对你有一定的参考价值。
http://acm.hdu.edu.cn/showproblem.php?pid=2050
思路:直线分割平面的特殊情况
第n个折线第时候:
- 折线的第一个射线与原有的(n-1)个折线的2(n-1)条边相交,产生2(n-1)-1个线段(由两个交点形成,将所在区域一分为二产生2(n-2)个新区域)和1个射线(产生1个新区域)和1个特殊的线段(由射线的起点和交点形成,这个特殊的线段在只有自己的时候不会产生新的区域,但是在与本折线的另一个射线所产生的特殊线段组合后会产生一个新区域)
- 折线的第二个射线与原有的(n-1)个折线的2(n-1)条边相交,产生2(n-1)-1个线段和1个射线和1个特殊的线段(与本折线的第一条射线产生特殊线段组合共同产生1个新区域)
公式
f(n)=f(n-1)+{[2(n-1)-1+1]+[2(n-1)-1+1]+1}
=f(n-1)+4(n-1)+1
=f(n-2)+4(n-2)+1+4(n-1)+1
....
=2n^2-n+1
#include<iostream> #include<string.h> using namespace std; #define max(a,b) a>b?a:b #define min(a,b) a<b?a:b __int64 dp[10005]={0}; int main() { int t; int a; scanf("%d",&t); while(t--) { cin >> a; cout << 2*a*a-a+1<<endl; } return 0; }
以上是关于hdu 2050.折线分割平面的主要内容,如果未能解决你的问题,请参考以下文章