HDU 2050 折線分割平面 遞推求解

2021-07-02 02:00:29 字數 478 閱讀 3939

遞推過程:

通過畫圖可以看出,平面數=頂點數+交點數+1

假設f(i-1)已知,則另一條折線將平面拆分要使得平面數最大,則必須該折線經過其他所有折線,因此f(i)比f(i-1)多出了4(i-1)條(兩條折線相交可以產生4個交點)另外頂點也多了乙個。故可得遞推公式:

f(i)-f(i-1) = 4(i-1)+1.

#include #include #include #include #include #include #include #include #include #include #include #includeusing namespace std;

int f[10010];

void init()

int main()

return 0;

}

HDU2050 折線分割平面(遞推)

problem description 我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,一條折線可以將平面分成兩部分,兩條折線最多可以將平面分成7部分,具體如下所示。輸入資料的第一行是乙個整數c,表示測試例項的個數,然後是c 行資料,每行包...

HDU2050 折線分割平面

題目描述 problem description 我們看到過很多直線分割平面的題目,今天的這個題目稍微有些變化,我們要求的是n條折線分割平面的最大數目。比如,一條折線可以將平面分成兩部分,兩條折線最多可以將平面分成7部分,具體如下所示。輸入資料的第一行是乙個整數c,表示測試例項的個數,然後是c 行資...

hdu 2050 折線分割平面

歸納 1 n條直線最多分平面問題 題目大致如 n條直線,最多可以把平面分為多少個區域。析 可能你以前就見過這題目,這充其量是一道初中的思考題。但乙個型別的題目還是從簡單的入手,才容易發現規律。當有n 1條直線時,平面最多被分成了f n 1 個區域。則第n條直線要是切成的區域數最多,就必須與每條直線相...