E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
2299
Ultra-QuickSort--POJ
2299
1、解题思路:树状数组,归并排序。 2、注意事项:树状数组的更新,归并排序的递归;注意用长整型保存结果。 3、实现方法: (树状数组:Memory: 11016K、Time: 797MS) 1 #include < iostream > 2 #include < algorit
·
2015-11-02 16:55
Quicksort
【原】 POJ
2299
Ultra-QuickSort 逆序数 解题报告
id=
2299
方法: 利用merge sort求逆序数,复杂度nlgn 如果比较每一对儿数(或使用bubble sort),复杂度为n^2,太慢 对于一对儿逆序对儿,有三种情况:两数都在数组左半边
·
2015-11-02 15:51
Quicksort
POJ
2299
Ultra-QuickSort(求逆序数,归并排序或者离散化+树状数组)
Ultra-QuickSort Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 27665 Accepted: 9915 Description In this problem, you have to analyze a particular sorting alg
·
2015-11-02 13:07
Quicksort
poj
2299
归并排序求逆序数
题意很简单,求QuickSort最坏情况下的交换次数。理解以后知道应该是一个求序列的逆序对问题。 发现归并排序nlog(n)的排序速度很不错,而求在排序的过程中,有个归并过程merge(),这里是将两个有序数列归并为一个有序数列,在归并的过程中,很容易就能够计算逆序对个数,所以可以很快解决这个问题。 即:对于数列[l, mid] [mid + 1, r]的合并,i 从l开始循环,j从mid +
·
2015-11-02 11:12
归并排序
POJ
2299
Ultra-QuickSort 归并排序、二叉排序树,求逆序数
id=
2299
题意就是求冒泡排序的交换次数,显然直接冒泡会超时,所以需要高效的方法求逆序数。 利用归并排序求解,内存和耗时都比较少, 但是有编码难度。。
·
2015-11-02 11:13
Quicksort
poj
2299
Ultra-QuickSort(树状数组求逆序数)
id=
2299
题意:给出n个数,求将这n个数从小到大排序,求使用快排的需要交换的次数。 分析:由快排的性质很容易发现,只需要求每个数的逆序数累加起来就行了。逆序数可以用树状数组求。
·
2015-11-02 09:19
Quicksort
pku
2299
Ultra-QuickSort 归并排序求逆序数
id=
2299
归并虽然知道了过程但是敲起代码来还是出现各种小错误。。。
·
2015-11-01 14:22
Quicksort
两个整数二进制表达中,有多少个位(bit)不同
输入例子:1999
2299
输出例子:71、利用移位运算,将32位二进制数保存在数组中,然后比较两个数组中各个元素是否相同。
威尼斯小艇
·
2015-10-31 21:05
异或
二进制
Hdu 1394 Minimum Inversion Number、Poj
2299
Ultra-QuickSort
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1394 题意:求某种规定序列中的最小逆序数。 递推比较最小那部分比较简单,就不说了。 主要想说:求逆序数可以用构建线段树的方法来做。其实思想和计数排序的思想差不多。每次处理a[i]时,先统计一下已经被计数的前几个数的计数和。(比较的是值。)然后再更新这个计数和。这道题的数据范围和下标范围是一样的,
·
2015-10-31 17:28
Quicksort
[MySQL技巧]INSERT INTO… ON DUPLICATE KEY UPDATE
(转载)http://blog.zol.com.cn/
2299
/article_2298921.html MySQL 自4.1版以后开始支持INSERT … ON DUPLICATE KEY UPDATE
·
2015-10-31 16:47
insert into
POJ
2299
Ultra-QuickSort(树状数组+离散化)
题目大意: 就是说,给你一个序列,然后让你求出这个序列有多少个逆序对,所谓逆序对就是对于这个序列中的元素有a[i]>a[j] 且i<j存在。 其实原题是这样说的,给你一个序列,让你用最少的交换次数使得这个序列变成从小到大的排序. 解题思路: 一开始是想到了归并的思路,但是没有能写出来代码. 先来来范围吧,序列的长度n<=500000+4.  
·
2015-10-31 14:24
Quicksort
POJ-
2299
Ultra-QuickSort 逆序对数量
id=
2299
给你一个升序列,然后要你只能交换相邻的两个数把这个序列按升序排列,求最少需要交换多少次。 不管怎么样,只要存在ai>aj(i<j),那么这两个数之间必须要交换。
·
2015-10-31 11:21
Quicksort
poj
2299
Ultra-QuickSort(归并排序)
维基百科:动画很帅 ,很简明说明归并排序 http://en.wikipedia.org/wiki/Merge_sort 一看这题 7000MS ,果断 暴力, 结果TLE 。。。。 然后用归并写了一个,WA ,弱爆了,后来看了下解题报告, &
·
2015-10-31 11:36
Quicksort
poj
2299
Ultra-QuickSort Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 20073 Accepted: 7102 Description In this problem, you have to analyze a particular sor
·
2015-10-31 10:10
poj
POJ
2299
Ultra-QuickSort
逆序数的定义: 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。逆序数为偶数的排列称为偶排列;逆序数为奇数的排列称为奇排列。如2431中,21,43,41,31是逆序,逆序数是4,为偶排列。 --摘自百度百科 记录数列的下标,按数列的值从小到大排序,所以后面插入的值肯定比前面的大,i - getsum
·
2015-10-31 10:52
Quicksort
ZOJ 3129 || POJ 3067 Japan
同POJ
2299
也是利用树状数组求逆序数的应用 将x从大到小排序,若x相同,按y从大到小排序,对y建立树状数组,根据逆序数的定义,画图演算一遍就很清楚了 #include
·
2015-10-31 10:52
poj
poj
2299
(离散化+树状数组)
http://acm.hust.edu.cn:8080/judge/problem/viewProblem.action?id=15025 #include<iostream> #include<algorithm> using namespace std; struct node { __int64 f,v; }str[500000]; __int64
·
2015-10-31 09:40
树状数组
poj
2299
思路: 1、将原序列seq[]的下标按照seq[]的值升序排序存入res[]中。 2、假如我们知道res[j]的后面小于res[j]的数的个数x的话,那么res[j]需要交换的次数为j-res[j]+x;(自己推一下就知道)。 3、如何求x呢?我们可以用树状数组sum[]来统计res[]从后往前处理过的数。 4、求和累加 j-res[j]+x; (j从n-1到0) &
·
2015-10-31 09:51
poj
poj
2299
/归并排序、逆序数
归并排序 合并两个有序数组 p,mid 1 3 5 6 7 12 q 2 4 6 8 9 11 找到3比2大,则3之后的都比2大,所以2的逆序数就有mid-p+1个 //
2299
.cpp
·
2015-10-31 09:27
归并排序
POJ
2299
逆序对
Crossings Time Limit: 2 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100463 Description In this problem, you have to analyze a particular sorting algorithm. The algorithm processes
·
2015-10-30 18:16
poj
poj
2299
二分思想
poj
2299
http://poj.org/problem?
·
2015-10-30 16:45
poj
POJ_
2299
_Ultra-QuickSort
牢骚:~做了那么久树状数组卡死在离散化,无语到透顶。 离散化的定义:把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。 这题是赤裸裸的求逆序对,为何要用离散化? 首先,这恶心的题目给出a[i]的范围居然是10亿,这还求啥逆序对,开个辅助数组c,直接MLE了,还好出题人人性化了点,给了个数组长度n,1<=n<50,000,还有希望... 然后,我们根据a[i]的
·
2015-10-30 13:51
Quicksort
NUC_TeamTEST_C && POJ
2299
(只有归并)
Ultra-QuickSort Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 42627 Accepted: 15507 Description In this problem, you have to analyze a p
·
2015-10-30 11:36
test
poj
2299
Ultra-QuickSort 归并排序求逆序数对
id=
2299
题目描述: 给一个有n(n<=500000)个数的杂乱序列,问:如果用冒泡排序,把这n个数排成升序,需要交换几次?
·
2015-10-27 15:22
Quicksort
【C语言】【笔试题】两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
#include #include int main() { int i = 0; int x = 1999; int y =
2299
; int count = 0; for (i = 0; i
安下
·
2015-10-24 13:37
C语言
有多少个位(bit)不同
【C语言】【笔试题】两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
#include #include int main() { int i = 0; int x = 1999; int y =
2299
; int count = 0; for (i = 0; i
安下
·
2015-10-24 13:37
C语言
有多少个位(bit)不同
C语言:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
#include int main() { int m=1999; int n=
2299
; int count=0; int i=0; for(;i int main() { int m=1999
韩静静
·
2015-10-24 12:26
取余取整
Poj
2299
Ultra-QuickSort(归并排序)
id=
2299
思路分析:序列的逆序数即为交换次数,所以求出该序列的逆序数即可。
·
2015-10-24 09:01
Quicksort
九度OJ 1066:字符串排序 (排序)
时间限制:1秒内存限制:32兆特殊判题:否提交:5632解决:
2299
题目描述: 输入一个长度不超过20的字符串,对所输入的字符串,按照ASCII码的大小从小到大进行排序,请输出排序后的结果输入: 一个字符串
thudaliangrx
·
2015-10-22 12:00
排序
C语言
OJ
九度
[BZOJ
2299
] [HAOI2011]向量
说明:这里的拼就是使得你选出的向量之和为(x,y)Input第一行数组组数t,(tFileName:bzoj
2299
.cpp>Author:Archer*******
hbhcy98
·
2015-10-21 17:00
POJ
2299
Ultra-QuickSort(树状数组求逆序数)
id=
2299
用树状数组求逆序数和用线段树求逆序数方法类似。输入91054,那么C[i]树状数组的建立是在,下标0123456789数组1100110001。因此二者都需要离散化。
WANSNIM
·
2015-10-21 15:04
*Data
Structure
求出两个int(32位)整数m和n的二进制表达中,有多少bit位不同
(X):(Y))intnum_sing(intmax){if(max%2==0){return0;}else{return1;}}intmain(){inta=1999;//1010 intb=
2299
wpfbcr
·
2015-10-15 23:07
1.编程实现
有多少bit位不同
POJ
2299
Ultra-QuickSort 树状数组+离散化
id=
2299
题目大意:在某些问题上,你必须分析特定的排序算法。 该算法处理一系列n个不同的整数通过交换两个相邻序列元素,直到按升序排序序列。
AC_Gibson
·
2015-10-12 16:00
poj(
2299
)——Ultra-QuickSort(归并排序求逆序数)
题意:现在告诉你有n个数,然后你每次可以交换相邻两个序列中的数字,然后问你最少几次可以把这个序列变成一个递增的有序序列。思路:今天重新学习了一下归并排序,这个排序是增量的思想,但是又有点分治+递归。至于怎样用归并来求逆序数的对数呢?我们把序列分成两半,然后如果后面那半的数小于前面那半的数的话,那么就说明在前面那个[p,mid)区间中有mid-p这么多的逆序数,因为归并排序保证了已经划分好的序列是有
ACMer_hades
·
2015-10-01 15:14
分治算法
poj
2299
Ultra-QuickSort(归并排序)
id=
2299
Ultra-QuickSortTimeLimit: 7000MS MemoryLimit: 65536KTotalSubmissions: 49165 Accepted: 17984DescriptionInthisproblem
theArcticOcean
·
2015-08-28 20:00
归并排序
poj
【HAOI2011】【BZOJ
2299
】向量
Description给你一对数a,b,你可以任意使用(a,b),(a,-b),(-a,b),(-a,-b),(b,a),(b,-a),(-b,a),(-b,-a)这些向量,问你能不能拼出另一个向量(x,y)。说明:这里的拼就是使得你选出的向量之和为(x,y)Input第一行数组组数t,(t #include #include #include #include #defineLLlonglong
CreationAugust
·
2015-08-27 16:00
数论
UVA 11324 强连通分量 最长链
option=com_onlinejudge&Itemid=8&category=25&page=show_problem&problem=
2299
题意:给一个有向图,问最大的子图使得任意两点有路径可达
beihai2013
·
2015-08-27 10:00
POJ
2299
Ultra-QuickSort(归并排序)
Description求序列的逆序对Input多组输入,每组用例第一行为序列长度n,之后n行为序列,以n=0结束输入Output对于每组用例,输出该序列的逆序对数SampleInput59105431230SampleOutput60Solution归并排序求逆序对即可Code#include #definemaxn500005 typedeflonglongll; intn,a[maxn],te
V5ZSQ
·
2015-08-27 09:00
POJ-
2299
Ultra-QuickSort-分治法排序求交换速度
Ultra-QuickSortTimeLimit:7000MS MemoryLimit:65536KTotalSubmissions:49132 Accepted:17969DescriptionInthisproblem,youhavetoanalyzeaparticularsortingalgorithm.Thealgorithmprocessesasequenceofndistinctint
MIKASA3
·
2015-08-25 16:00
C++
poj
hdoj 3488 Tour 【最小费用最大流】【KM算法】
TourTimeLimit:3000/1000MS(Java/Others) MemoryLimit:65535/65535K(Java/Others)TotalSubmission(s):
2299
chenzhenyu123456
·
2015-08-24 16:00
poj
2299
查找逆序数 归并
Ultra-QuickSortTimeLimit:7000MSMemoryLimit:65536KTotalSubmissions:49032Accepted:17936DescriptionInthisproblem,youhavetoanalyzeaparticularsortingalgorithm.Thealgorithmprocessesasequenceofndistinctinteg
HAI__嗨I起来
·
2015-08-22 20:25
排序
poj
poj
2299
查找逆序数 归并
Ultra-QuickSortTimeLimit: 7000MS MemoryLimit: 65536KTotalSubmissions: 49032 Accepted: 17936DescriptionInthisproblem,youhavetoanalyzeaparticularsortingalgorithm.Thealgorithmprocessesasequenceofndistinc
became_a_wolf
·
2015-08-22 20:00
POJ
2299
Ultra-QuickSort(求逆序数)
id=
2299
解题思路:树状数组实际上就是一个数组,只不过它的每个元素保存的是跟原来数组的一些元素相关的结合值。若A为原数组,定义数组C为树状数组。
piaocoder
·
2015-08-21 23:00
归并排序
树状数组
POJ
2299
Ultra-QuickSort
id=
2299
解题思路:树状数组实际上就是一个数组,只不过它的每个元素保存了跟原来数组的一些元素相关的结合值。若A为原数组,定义数组C为树状数组。
piaocoder
·
2015-08-19 12:00
poj
2299
Ultra-QuickSort(树状数组求逆序数+离散化)
树状数组,具体的说是离散化+树状数组。这也是学习树状数组的第一题.算法的大体流程就是:1.先对输入的数组离散化,使得各个元素比较接近,而不是离散的,2.接着,运用树状数组的标准操作来累计数组的逆序数。算法详细解释:1.解释为什么要有离散的这么一个过程? 刚开始以为999.999.999这么一个数字,对于int存储类型来说是足够了。 还有只有500000个数字,何必要离散化呢? 刚开始一
u013050857
·
2015-08-12 17:00
树状数组
poj 2229 Ultra-QuickSort (归并排序求逆序数对|| 树状数组)
id=
2299
Ultra-QuickSortTimeLimit: 7000MS MemoryLimit: 65536KTotalSubmissions: 48444 Accepted: 17684DescriptionInthisproblem
w144215160044
·
2015-08-08 16:00
Poj
2299
Ultra-QuickSort (归排求逆序数)
Ultra-QuickSortTimeLimit: 7000MS MemoryLimit: 65536KTotalSubmissions: 48371 Accepted: 17657DescriptionInthisproblem,youhavetoanalyzeaparticularsortingalgorithm.Thealgorithmprocessesasequenceofndistinc
Grit_ICPC
·
2015-08-07 09:00
2299
Poj Ultra-QuickSort(归并排序求逆序数)
Ultra-QuickSortTimeLimit: 7000MS MemoryLimit: 65536KTotalSubmissions: 46926 Accepted: 17131DescriptionInthisproblem,youhavetoanalyzeaparticularsortingalgorithm.Thealgorithmprocessesasequenceofndistinc
Grit_ICPC
·
2015-06-27 23:00
技巧
poj
2299
Ultra-QuickSort
DescriptionInthisproblem,youhavetoanalyzeaparticularsortingalgorithm.Thealgorithmprocessesasequenceofndistinctintegersbyswappingtwoadjacentsequenceelementsuntilthesequenceissortedinascendingorder.Fort
Kirito_Acmer
·
2015-06-03 14:00
线段树
离散化
树状数组
POJ
2299
Ultra-QuickSort
id=
2299
题目大意:通过交换相邻两个的序列元素,使得序列为升序,问你最小需要多少次。解题思路:实质就要你求该序列的逆序数。求逆序数有两种求法。一种是归并排序,还有一种就是树状数组。
piaocoder
·
2015-05-27 20:00
归并排序
逆序数
树状数组
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他