首页 > 其他 > 详细

B - Brainman (POJ - 1804)

时间:2018-02-14 21:20:44      阅读:215      评论:0      收藏:0      [点我收藏+]

- 题目大意

    给出一串数字,问能是它为顺序排列的最小交换数字方式。

- 解答思路

    利用归并排序来求逆序数(注意数组的大小就行了)。

- 代码

#include<iostream>
using namespace std;
int num[100000];
int main()
{
	int n,m;
	cin >> n;
	for (int i = 1; i <= n; i++)
	{
		cin >> m;
		for (int j = 1; j <= m; j++)
			cin >> num[j];
		int sum = 0;
		for (int i = 1; i < m; i++)
			for (int k = i + 1; k <= m; k++)
				if (num[i] > num[k])
					sum++;
		cout << "Scenario " << "#"<<i<<":" << endl<<sum<<endl<<endl;
	}
	return 0;
}

  

B - Brainman (POJ - 1804)

原文:https://www.cnblogs.com/alpacadh/p/8448880.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!