G 圓桌會議

2021-09-10 08:10:55 字數 912 閱讀 8848

hdu acm集訓隊的隊員在暑假集訓時經常要討論自己在做題中遇到的問題.每當面臨自己解決不了的問題時,他們就會圍坐在一張圓形的桌子旁進行交流,經過大家的討論後一般沒有解決不了的問題,這也只有hdu acm集訓隊特有的圓桌會議,有一天你也可以進來體會一下哦:),在一天在討論的時候,eddy想出了乙個極為古怪的想法,如果他們在每一分鐘內,一對相鄰的兩個acm隊員交換一下位子,那麼要多少時間才能得到與原始狀態相反的座位順序呢?(即對於每個隊員,原先在他左面的隊員後來在他右面,原先在他右面的隊員在他左面),這當然難不倒其他的聰明的其他隊友們,馬上就把這個古怪的問題給解決了,你知道是怎麼解決的嗎?

input

對於給定數目n(1<=n<=32767),表示有n個人,求要多少時間才能得到與原始狀態相反的座位順序(reverse)即對於每個人,原先在他左面的人後來在他右面,原先在他右面的人在他左面。

output

對每個資料輸出一行,表示需要的時間(以分鐘為單位)

sample input45

6sample output24

6分析:

本題,在我一開始模擬的時候,我發現,這個好像可以用佇列模擬來做,就直接不斷把第乙個元素弄得最後乙個元素後面去。直到符合條件就可以了。但是,很明顯沒必要這麼麻煩。

我們可以將這個圓桌分成兩個部分。

例如:1 6

2 5 

3 4是不是我們只要將兩邊換成:

3 42 5

1 6這樣就是滿足條件了呢。

可以發現,我們是把每一邊的序列完成交換了一下。這個過程需要的次數不就是n*(n-1)/2。然後把兩邊的都加起來,就是答案。

同樣,如果是奇數個人,同樣也是分成兩部分。

參考部落格:

**:

#include"stdio.h"

int main()

}

F 圓桌會議

acm集訓隊的隊員在暑假集訓時經常要討論自己在做題中遇到的問題.每當面臨自己解決不了的問題時,他們就會圍坐在一張圓形的桌子旁進行交流,經過大家的討論後一般沒有解決不了的問題,這也只有hdu acm集訓隊特有的圓桌會議,有一天你也可以進來體會一下哦 在一天在討論的時候,eddy想出了乙個極為古怪的想法...

F 圓桌會議

hdu acm集訓隊的隊員在暑假集訓時經常要討論自己在做題中遇到的問題.每當面臨自己解決不了的問題時,他們就會圍坐在一張圓形的桌子旁進行交流,經過大家的討論後一般沒有解決不了的問題,這也只有hdu acm集訓隊特有的圓桌會議,有一天你也可以進來體會一下哦 在一天在討論的時候,eddy想出了乙個極為古...

C C 圓桌會議

集訓隊的隊員在暑集訓時經常要討論自己在做題中遇到的問題.每當面臨自己解決不了的問題時,他們就會圍坐在一張圓形的桌子旁進行交流,經過大家的討論後一般沒有解決不了的問題。在一天在討論的時候,eddy想出了乙個極為古怪的想法,如果他們在每一分鐘內,一對相鄰的兩個acm隊員交換一下位子,那麼要多少時間才能得...