problem description
我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,一條折線可以將平面分成兩部分,兩條折線最多可以將平面分成7部分,具體如下所示。
輸入資料的第一行是乙個整數c,表示測試例項的個數,然後是c 行資料,每行包含乙個整數n(0output
對於每個測試例項,請輸出平面的最大分割數,每個例項的輸出佔一行。
sample input
2 1 2sample output
2 7分析: 首先分析直線分平面最多能分多少份:先寫出前幾項找出規律,f(1)=2;f(2)=4;f(3)=7;f(4)=11……可以發現:每一項都比前一項大n,即f[n]=f[n-1]+n;下面就求f[n]
f[n] -f[n-1]=n
f[n-1]-f[n-2]=n-1
f[n-2]-f[n-3]=n-2
f[2]-f[1]=2
令f[n]=f[n]-f[n-1],求f[n]的前n項和,即等號左邊全部相加,得f[n]-f[1]=n*(n+1)/2-1;又因為f[1]=2;所以f[n]=n*(n+1)/2+1;
同理,可將每個折線看成是兩條直線,所以f[n]=n*(2*n+1)+1; 但每一條折線比兩條直線分割的面的部分少2,所以n條折線比2n條直線分割平面形成的部分少2n,所以f(n)=2*n^2-n+1.
**如下:
#includeint main() return 0; }
HDOJ 2050 折線分割平面
我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,一條折線可以將平面分成兩部分,兩條折線最多可以將平面分成7部分,具體如下所示。輸入資料的第一行是乙個整數c,表示測試例項的個數,然後是c 行資料,每行包含乙個整數n 0 對於每個測試例項,請輸...
HDOJ 2050 折線分割平面(簡單遞推)
我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,一條折線可以將平面分成兩部分,兩條折線最多可以將平面分成7部分,具體如下所示。input 輸入資料的第一行是乙個整數c,表示測試例項的個數,然後是c 行資料,每行包含乙個整數n 0output...
hd 2050 折線分割平面
折線分割平面 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,...