html5入门:教你用canvas写一个时钟

 

 

解题思路:

        如果是所有人排列成一条直线,那么移动的思想与冒泡排序一样,总共需要n*(n-1)/2种方法,
    求环形的逆序变换最小时间,因为环形是相互连接的,那么只要将n划分为最接近的两个直线,
    当这两个划分的直线逆序了。那么整条环形便也逆序了。
      冒泡法,但是要分成一半来冒泡 ,冒泡法,但是要分成一半来冒泡。

代码:

#include<iostream>
using namespace std;
int main()
{
    int m,n,s;
    while(cin>>n)
    {
        m=n/2;
        n=n-m;
        s=n*(n-1)/2+m*(m-1)/2;
        cout<<s<<endl;
    }
    return 0;
}

         

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。