lunes, 24 de octubre de 2011

299 - Train Swapping, uva

#include<iostream>
#include<sstream>
#include<cstdio>
#include<stack>
#include<vector>
#include<algorithm>
#define db(a) cout << #a << " = " << a << endl;
using namespace std;
int main(){
	int t, n;
	scanf("%d", &t);
	for(int k = 0; k < t; k++){
		scanf("%d", &n);
		vector lista(n);
for(int r = 0; r < n; r++){
			scanf("%d", &lista[r]);
		}
		int res = 0;
		for(int i = n; i > 1; i--)
for(int j = 0; j + 1 < i; j++){
				if(lista[j] > lista[j + 1]) {
swap(lista[j], lista[j + 1]);
res++;
}
}
printf("Optimal train swapping takes %d swaps.\n", res);
}
return 0;
}

No hay comentarios:

Publicar un comentario