8M - 三角形

用N个三角形最多可以把平面分成几个区域? 

Input

输入数据的第一行是一个正整数T(1<=T<=10000),表示测试数据的数量.然后是T组测试数据,每组测试数据只包含一个正整数N(1<=N<=10000).

Output

对于每组测试数据,请输出题目中要求的结果. 

Sample Input

2
1
2

Sample Output

2
8

// 边界:一个三角形最多可以把平面分成2个区域
// 递推:第i个三角形的每条边最多可分别与前i-1个三角形的两条边相交.
     增加几个交点,就增加几个区域. (折线使划分区域-1)
 1 #include<stdio.h>
 2 __int64 a[10001];
 3 void table()
 4 {
 5     a[1]=2;
 6     for(int i=2;i<=10000;i++)
 7         a[i]=a[i-1]+3*(i-1)*2;
 8 }
 9 int main()
10 {
11     int t,n;
12     table();
13     scanf("%d", &t);
14     while(t--)
15     {
16         scanf("%d", &n);
17         printf("%I64d\n", a[n]);
18     }
19     return 0;
20 }
View Code

 

posted @ 2019-02-07 22:49  Blind  阅读(276)  评论(0编辑  收藏  举报