#UVa:10327-Flip Sort

灆洢 2012-03-31 08:17:07

即是計算Bubble Sort的交換次數。

C++(0.080)

/*******************************************************/
/* UVa 10327 Flip Sort                                 */
/* Author: Maplewing [at] knightzone.studio            */
/* Version: 2012/03/31                                 */
/*******************************************************/
#include<iostream>
#include<cstdio>
using namespace std;

int main(){
  int N;
  int flipsort[1005];
  int M;

  while( scanf( "%d", &N ) != EOF ){
    for( int i = 0 ; i < N ; i++ )
      scanf( "%d", &flipsort[i] );

    M = 0;
    for( int i = 0 ; i < N ; i++ )
      for( int j = N-1 ; j > i ; j-- )
        if( flipsort[j] < flipsort[j-1] ){
          swap( flipsort[j], flipsort[j-1] );
          M++;
        }

    printf( "Minimum exchange operations : %d\n", M );
  }
  return 0;
} 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料