1. 程式人生 > >hdu 思維風暴

hdu 思維風暴

def fun size n-1 fff rgb http turn string

點擊打開鏈接

偶然在杭電上看到的題目,數學題。好像是一道六年級奧賽題目,反正我是沒有想出來,也知道往那上面想。就是找不到規律啊。學習了網上的方法,

這道題須要求出來多添加的點,就是與之前每條邊添加的點數,每兩個點之間能夠多添加一個平面,所以說假設多了n個點。那麽添加的平面就是n。問題轉化為了求最多添加的點數。這樣就好辦了。新添加的三角形最多能夠與之前每一個三角形的每條邊有兩個交點,所以假設如今要加入第m個三角形,那麽最多能夠添加(m-1)*6個交點,即添加(m-1)*6個平面,所以說f(n)=2+1*6+2*6+3*6+……+(n-1)*6 = 2 + 3*n*(n-1)

代碼:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define ll long long 
int fun(int n)
{
	if(n == 1)
		return 2;
	return fun(n-1)+(n-1)*6;	
}
int main()
{
	int T,n;
	scanf("%d",&T);
	while(T--)
	{
		scanf("%d",&n);
		printf("%d\n",fun(n));
	} 
	return 0;
}



hdu 思維風暴