(找規律)萌萌噠身高差
“清明時節雨紛紛,路上行人慾斷魂。”
然而wfy同學的心情是愉快的,因為BNU ACM隊出去春遊啦!並且,嗯。。。
以下是wfy同學的日記:
昨天,何老師告訴我們:明天我們去春遊,大家準備好喝的和吃的哦!
大家聽了都興奮起來,有的歡呼,有的鼓掌,開心得不得了。第二天,我們早早地來到學校,迫不及待地上了車,來到了公園。一進門,啊,太美了!公園中有那麼多樹,有高有矮,有粗有瘦,密密的,在春風吹拂下輕輕搖擺著,像是歡迎我們的到來。公園中有那麼多的鮮花,有紅有黃,有紫有白,散發著淡淡的清香,聞得我們都醉了。公園的邊角上有一條清澈的小河,河水緩緩地流淌著,可以看到水裡的魚兒在快活地游來游去,多自在啊!水草碧綠碧綠的,多新鮮啊!小河的旁邊是一片小樹林,遠遠望去一片鮮綠。我們在裡面吃東西、做遊戲、捉迷藏,玩得瘋極了。樹林的後面是連綿起伏的小山坡,蜿蜿的真像一條遊動的蛇。當然,我覺得公園的天空也很美。它萬里無雲,一碧如洗,很清澈。小鳥在展翅飛翔,它們形態各異,一會兒上升,一會兒下滑,一會兒吃蟲,一會兒在小樹林裡休息,非常悠閒。快樂時光總是那麼短暫,很快,天色就昏暗了。我們依依不捨地上了車,回到了學校,我真希望明年的春天還能再來看看這美麗的公園。
回到學校後,何老師說:請大家排成一排,我們來拍照片啦!
何老師特別喜歡萌的東西,比如**,比如****,等等。
何老師認為,同學們站成一排時,相鄰兩個同學身高相差越多,這兩個同學站在一起越萌。
那麼所有相鄰兩個同學的身高差加起來越大,拍出來的照片就越萌,也就是這張照片的萌力指數。
何老師希望拍出來的照片的萌力指數儘可能大。
然而何老師並不是數學老師,而是語文老師。何老師覺得很GG。
何老師只想知道,如果讓同學們隨便站成一排(站成所有排列的可能性都相等),萌力指數的數學期望是多少。
聰明的我一下子就算出了答案,然後何老師就獎勵了我一個很萌的禮物。
今天真的好開心。
BNU ACM隊共有名同學,身高分別是,聰明的你能計算出何老師想要的數學期望嗎?
Input
第一個是一個正整數,表示測試資料的組數,
每組測試資料只有一行,包含一個整數。
Output
對於每組測試資料,輸出一行,包含一個實數,表示萌力指數的數學期望值,要求相對誤差不超過,
也就是說,令輸出結果為,標準答案為,若滿足,則輸出結果會被認為是正確答案。
Sample Input
2 2 3
Sample Output
1.000000000000 2.666666666667
Hint
對於第二組樣例,所有可能的排列是[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1],所以答案是
Source
這是個找規律的題目,起初用全排列做超時,輸出結果會發現是存在規律的。
#include<iostream> #include<cstdio> #include<queue> #include<map> #include<set> #include<stack> #include<vector> #include<algorithm> #include<cmath> #include<string> #include<string.h> using namespace std; double a[105],d,c=0.666666666667; int main() { int t; scanf("%d",&t); a[1]=0; for(int i=2;i<105;i++) { if(i%3){ d=(i/3)*2+1; a[i]=(int)a[i-1]+d; } else{ d=((i-1)/3)*2+1; a[i]=a[i-1]+d+c; } } while(t--) { int n; scanf("%d",&n); printf("%.12lf\n",a[n]); } return 0; }