题意为给一个只有1 2 3组成的序列,通过两两交换得到一个升序的数列,求两两交换的次数拿排序后的序列为标准,先找出交换一次能使两个数变为正确位置的一对数的数量(第一种交换),再找交换一次只能使一个数进入正确位置的三个数的数量(第二种交换)。做第一种交换的代价为需要交换位置的数的(对数),第二种交换的...
分类:
其他好文 时间:
2015-09-02 02:00:34
阅读次数:
125
DescriptionProfessor Clumsey is going to give an important talk this afternoon. Unfortunately, he is not a very tidy person and has put all his transp...
分类:
其他好文 时间:
2015-08-31 19:25:46
阅读次数:
219
1052. Linked List Sorting (25)时间限制400 ms内存限制65536 kB代码长度限制16000 B判题程序Standard作者CHEN, YueA linked list consists of a series of structures, which are no...
分类:
其他好文 时间:
2015-08-31 10:01:45
阅读次数:
177
1028. List Sorting (25)时间限制200 ms内存限制65536 kB代码长度限制16000 B判题程序Standard作者CHEN, YueExcel can sort records according to any column. Now you are supposed ...
分类:
其他好文 时间:
2015-08-28 21:13:41
阅读次数:
171
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5122
K.Bro Sorting
Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 512000/512000 K (Java/Others)
Total Submission(s): 1088 Accepted Submissio...
分类:
其他好文 时间:
2015-08-27 13:37:04
阅读次数:
118
Another topological sorting problem. Note: the DFS one is like a 'post-order' traversal.class Solution { unordered_map> g; unordered_set visited...
分类:
其他好文 时间:
2015-08-25 14:10:04
阅读次数:
189
题目链接:点击打开链接
题意描述:给定一个长度为100000的数组,每个元素范围在1~100000,且互不相同,交换其中的任意两个数需要花费的代价为两个数之和。问如何交换使数组有序,花费的代价最小?
解题思路:
1、显然我们知道,要使一个数组有序至少交换的次数(即必须要交换的次数)为数组中的逆序数
2、由于数组的长度比较大所以我们可以通过树状数组来统计结果
此处需要两个树状数组
第一个...
分类:
编程语言 时间:
2015-08-20 22:34:00
阅读次数:
259
题意 由一些不同元素组成的升序序列是可以用若干个小于号将所有的元素按从小到大的顺序 排列起来的序列。例如,排序后的序列为 A, B, C, D,这意味着 A
每来一个小于关系就进行一次拓扑排序 直到出现冲突(也就是出现了环)或者已经能确定顺序 当结果已经确定时 后面的小于关系也就没有必要处理了 因此可以用一个flag标记结果是否已经确定
#include
#include
#i...
分类:
编程语言 时间:
2015-08-19 17:03:05
阅读次数:
119
链接:http://poj.org/problem?id=1007
DNA Sorting
Time Limit: 1000MS Memory Limit: 10000K
Total Submissions: 89319 Accepted: 35892
Description
One measure of ``unsortedness'' in a sequence ...
分类:
其他好文 时间:
2015-08-17 12:11:28
阅读次数:
99
题目地址:POJ 1094
题意:题目样例的三种输出分别是:1. 在第x个关系中可以唯一的确定排序,并输出。2. 在第x个关系中发现了有回环(Inconsisitency矛盾)3.全部关系都没有发现上面两种情况,输出第3种.
思路:注意两点1. 输入一条边时如果此时拓扑有解就输出这个解,即使后面的边成有向环也不管了,所以每次输入的时候都得进行拓扑排序。2. 判断存在有向环应先于判断多解。#inc...
分类:
编程语言 时间:
2015-08-14 19:22:22
阅读次数:
200