分割平面題解

分割平面


題目描述
設有n條封閉曲線畫在平面上,而任何兩條封閉曲線恰好相交於兩點,且任何三 條封閉曲線不相交於同一點,問這些封閉曲線把平面分割成的區域個數。

在這裏插入圖片描述

輸入格式
一個數n(1≤n≤46341)

輸出格式
一個數,這些曲線把平面分割成的個數總和

樣例
樣例輸入
3
樣例輸出
8


精髓:

當前平面的個數等於前一個圖形平面的個數加上新增的平面的個數。

前一個平面的個數就是a[n-1]。新增的平面的個數恰好是上一圖橢圓數量的兩倍,也就是2*(n-1)

所以遞推式就是:a[i]=a[i-1]+2*(i-1);

參考代碼:

#include<cstdio>
int main() {
	int n;
	long long a[46345]={0,2};
	scanf("%d",&n);
	for(int i=2;i<=n;i++) {
		a[i]=a[i-1]+2*(i-1);
	}
	printf("%d",a[n]);
} 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章