平面切割(特别版)

题目描述
我们要求的是n条闪电型折线分割平面的最大数目。比如,一条闪电型折线可以将平面分成两部分,两条最多可以将平面分成12部分,三条最多可将平面分成31部分,四条最多则可将一个平面分为59部分。

输入描述
输入数据的第一行是一个整数C,表示测试实例的个数,然后是C 行数据,每行包含一个整数n(0<n<=10000),表示折线的数量。

输出描述
对于每个测试实例,请输出平面的最大分割数,每个实例的输出占一行。

样例输入
3
1
2
3
样例输出
2
12
31
提示
注意用递归的方式找到数学公式哦~

示例代码

  #include<iostream>
     using namespace std;
     int main() {
       int n,N;
       int a[10001];
       cin>>N;
       while(N--){
       		cin>>n;
       		a[1]=2;
       		for(int i=2;i<=n;i++){
	               a[i]=a[i-1]+(i-1)*10-(i-2);
    	   }
      		cout<<a[n]<<endl;
       }
      return 0;
    }

提示:
当有n条折线,平面的分割数有 a[n]=a[n-1]+(n-1)*10-(n-2);

猜你喜欢

转载自blog.csdn.net/three_cats/article/details/90070060