您的位置:首页 > 其它

HDU 2689 Sort it

2017-07-07 14:15 316 查看

Sort it

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 4659 Accepted Submission(s): 3234


[align=left]Problem Description[/align]
You
want to processe a sequence of n distinct integers by swapping two
adjacent sequence elements until the sequence is sorted in ascending
order. Then how many times it need.
For example, 1 2 3 5 4, we only need one operation : swap 5 and 4.

[align=left]Input[/align]
The
input consists of a number of test cases. Each case consists of two
lines: the first line contains a positive integer n (n <= 1000); the
next line contains a permutation of the n integers from 1 to n.

[align=left]Output[/align]
For each case, output the minimum times need to sort it in ascending order on a single line.

[align=left]Sample Input[/align]

3

1 2 3

4

4 3 2 1

[align=left]Sample Output[/align]

0

6
水题

#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <algorithm>
using namespace std;
typedef long long ll;
int n,a[10009];
int main()
{
while(cin>>n)
{
int ans=0;
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
swap(a[i],a[j]);
ans++;
}
}
}
cout<<ans<<endl;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: