捋一下思路,
具体思想是当每加条线与其他已加线都相交时满足平面最多
1,当n条直线相交时的状态比n-1条相交直线状态多了n-1个交点,增加了n个平面(为什么?画图猜出来的)所以fn = fn-1 +n;
2,当每次加一对平行直线,同理上式double就行了;fn=fn-1 +2*(2*(n-1)+1)此时n为第几对而不是第几条,
3将平行直线一侧相交,就是这种情况了,相交一侧面减1,具体画图可以看出来,或脑推
所以fn=fn-1 +2*(2*(n-1)+1)-1;
很简单的一题思想却很重要以后我要常看~~~·
#include<stdio.h>
__int64 dp,i,n,t;
int main()
{
scanf("%I64d",&t);
while(t--)
{
scanf("%I64d",&n);
dp=2;
for(i=2;i<=n;i++)
dp = dp+4*(i-1)+1;
printf("%I64d\n",dp);
}
return 0;
}