RSS
linjiazhen
分类
标签云
搜索
随机文章
最新评论
最新留言
链接
计数器
145380
UVA 299: Train Swapping
Jasonlin
posted @ 2011年3月28日 12:03
in UVA
, 2076 阅读
题目大意:
按序号从大到小排列火车,相邻之间才能交换。求交换次数。
解题思路:
就是冒泡法排序嘛~
解题代码:
#include<iostream> using namespace std; int t[100]; int n; int swap(){ int count=0; for(int i=0;i<n-1;i++) for(int j=0;j<n-1-i;j++) if(t[j]>t[j+1]){ int tmp=t[j]; t[j]=t[j+1]; t[j+1]=tmp; count++; } return count; } int main(){ int cas; cin>>cas; while(cas--){ cin>>n; for(int i=0;i<n;i++) cin>>t[i]; cout<<"Optimal train swapping takes "<<swap()<<" swaps."<<endl; } return 0; }