1.归并排序 思路:采用分治思想将序列两两分组,然后再逐级将各组归并。详情见图: 归并排序可求逆序对,详情见代码: ...
分类:
编程语言 时间:
2016-03-26 23:43:53
阅读次数:
350
Description Input Output Sample Input Sample Output
分类:
编程语言 时间:
2016-03-22 00:40:09
阅读次数:
218
用树状数组求逆序对 唯一的坑点就是sum要用long long存 直接贴代码了 以后忘了还能直接看 2333…… PS:和hdu3743代码是一样的,因为两个都是逆序对模版题……
分类:
其他好文 时间:
2016-03-19 08:49:11
阅读次数:
174
Description 给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目 Input 第一行为n,表示序列长度,接下来的n行,第i+1行表示序列中的第i个数。 Output 所有逆序对总数. Sample Input 4 3 2 3 2 Sampl
分类:
其他好文 时间:
2016-02-27 18:00:00
阅读次数:
133
前言 今天遇到求逆序对的问题,经过一番思索之后,特意来总结一下。因为也学习到了很多方法,以前自己一些百思不得其解的问题也有了解答。 正文 先上一个简单的问题: 分析:题目中说使用插入排序,也就是在排序过程中计算交换的次数,按照插入排序的原理,先定第一个,再定前两个的顺序,以此类推,只要交换了,我的次
分类:
编程语言 时间:
2016-02-25 13:45:56
阅读次数:
282
某年NOIP day1 压轴。 然而?首先我们展开这个式子,然后发现这是一个排序不等式的模型。 然后?!!双重离散化,首先离散化a,b,然后记录a数组每一个数应该到达的位置。 然后?我们的目的就变成了将a归并升序(降序)排列,求最少的操作数。 归并排序求逆序对。 #include<iostream>
分类:
其他好文 时间:
2016-02-15 16:19:08
阅读次数:
119
分治算法_求逆序对 AYYZOJ p1434 【问题描述】 给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。 【输入格式】 第一行为n,表示序列长度,接下来的n行,第i+1行表示序列中的第i个数。 【输出格式】 所有逆序对总数。 【输入样例】 4
分类:
编程语言 时间:
2016-02-03 23:29:28
阅读次数:
558
常用算法: 1 package ArrayMergeSort; 2 3 import java.util.Arrays; 4 5 public class Solution { 6 public int[] mergeSort(int[] arr) { 7 if (arr...
分类:
其他好文 时间:
2016-01-14 14:04:50
阅读次数:
209
树套树呀树套树。题意为可以交换两个位置的数,询问每次交换后的逆序对数。直接区间线段树上面套一个值域线段树,然后稍微讨论一下。首先建好树查询一次得到一个ans。(话说我们得到了一个nlog^2的求逆序对的算法)设两个位置为i,j,如果i==j或者是a[i] == b[j]的话就不管。i>j则交换。如果...
分类:
其他好文 时间:
2015-12-28 12:05:17
阅读次数:
210
#includelong long cnt;long long a[500001],t[500001];void merge(long long *a,long long *t,int l,int m,int r){ int p = l; int q = m+1; int k =...
分类:
其他好文 时间:
2015-12-03 20:59:07
阅读次数:
117