圓(凸多邊形最多可劃分成為的區域)

2021-08-21 18:27:31 字數 1224 閱讀 1837

簽到題來了,送你們乙個python秒的題。

apojacsleam來到了oi大陸,經過了連年征戰,成為了一方國王。

apojacsleam把他的王國命名為「apo國」,apo國的領土是乙個標準的圓形

apojacsleam現在想封賞他的大臣,他在國境上建立了n個城市,要求他的大臣對這n個城市兩兩之間修建道路(道路是筆直的),把整個王國分成盡量多的區域,使得每乙個大臣都有封土並且不會太大(以免謀反)。

於是apojacsleam找你求助,他告訴你他打算建多少個城市,而你的任務是告訴他最多可以分成多少個部分。

說的太慢可是要被處死的,所以你必須要在1s之內回答。

輸入資料有多組,每組一行,乙個正整數n,意義如「題目描述」
對於每一組資料輸出一行描述答案:

輸出乙個正整數k,表示最多分成k份。

示例1複製

2

3

複製

2

4

樣例解釋(樣例1和樣例2一起解釋了):

示例2複製

4

56

複製

8

1631

在這個題目中主要是要知道凸多邊形內部最多可以劃分為多少個區域

通項公式tn = (n-1)(n-2)(n^2-3i+12)/24;

#include#include#include#include#include#include#include#include#include#include#define pi acos(-1)

#define fa ios::sync_with_stdio(false);

using namespace std;

typedef long long ll;

const int max_n=1000000+50;

const int inf=0x3f3f3f3f;

ll a[max_n];

void init()

}int main()

return 0;

}

凸多邊形的劃分

給定乙個具有 n 個頂點的凸多邊形,將頂點從 1 至 n 標號,每個頂點的權值都是乙個正整數。將這個凸多邊形劃分成 n 2 個互不相交的三角形,對於每個三角形,其三個頂點的權值相乘都可得到乙個權值乘積,試求所有三角形的頂點權值乘積之和至少為多少。輸入格式 第一行包含整數 n,表示頂點數量。第二行包含...

凸多邊形的劃分

給定乙個具有 n 個頂點的凸多邊形,將頂點從 1 至 n 標號,每個頂點的權值都是乙個正整數。將這個凸多邊形劃分成 n 2 個互不相交的三角形,對於每個三角形,其三個頂點的權值相乘都可得到乙個權值乘積,試求所有三角形的頂點權值乘積之和至少為多少。輸入格式 第一行包含整數 n,表示頂點數量。第二行包含...

凸多邊形的劃分

有乙個 n 個頂點的多邊形,每個頂點都有乙個權值,求如何劃分使得劃分後的 n 2 個三角形的權值乘積和最小。這題本意是要寫高精度的,不過這不是重點。我們考慮用 f i j 表示以 i 和 j 之間的頂點所構成的多邊形的最小權值乘積和,那麼我們考慮作為 i,j 這條邊,必定有乙個頂點與這條邊形成乙個三...