類似冒泡程序
如果所有人是線性排列,那我們的工作就是類似冒泡程序做的工作:1,2,3,4,5變為5,4,3,2,1 ,耗時n(n-1)/2
但是出現了環,也就是說1,2,3,4,5變為3,2,1,5,4也可滿足條件 
我們可以把這個環等分成兩個部分 ,每個部分看成是線性的,再把它們花的時間加起來.
當n是偶數時, 每份人數n/2 ,即 2*(n/2 )*(n/2 -1)/2;
當n是奇數時,兩份的人數分別是n/2和n/2+1,即(n/2)*(n/2 -1)/2 + (n/2 +1)*(n/2)/2 ;

這思路太強了。。。
#include <iostream>
#include 
<vector>
#include 
<string>
#include 
<math.h>
using namespace std;


int main()
{
    
int n,num,rnum;
    vector
<int> re;
    cin
>>n;
    
while (n>0)
    
{
        cin
>>num;
        
if (num%2==0)
        
{
            rnum
=(num/2-1)*(num/2)*2/2;
            re.push_back(rnum);
        }

        
if (num%2==1)
        
{
            rnum
=(num/2-1)*(num/2)/2+ (num/2+1)*(num/2)/2;
            re.push_back(rnum);
        }

        n
--;
    }

    
for (size_t i=0;i<re.size();i++)
    
{
        cout
<<re[i]<<endl;
    }

    
}