1. 程式人生 > >折線分割平面問題

折線分割平面問題

我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,一條折線可以將平面分成兩部分,兩條折線最多可以將平面分成7部分,具體如下所示。

輸入資料的第一行是一個整數C,表示測試例項的個數,然後是C 行資料,每行包含一個整數n(0<n<=10000),表示折線的數量。

Output
對於每個測試例項,請輸出平面的最大分割數,每個例項的輸出佔一行。

Sample Input
2
1
2
Sample Output
2
7

如果單純的從折線的方向去思考就可能變得很困難,因為折線在第3條時就變得很大了,而且不好發現規律, 仔細觀察,就可以發現,折線可以轉變成2條相交得直線的一半,而2條相交直線分割的平面為4,1條折線為2,而4條直線為11,2條折線為4.可以發現直線的平面數是上一條直線分割的平面數加上這次的直線數,而折線的則為直線分割的平面數減去2n(折線數),即:
n=折線數, m=直線數
f(m)=f(m-1)+m;
當m=2

n; f(n)=f(m)-2*n;