Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
两种思路第一种当然是喜闻乐见的各种树状数组咯,但是说实话,一般人很难能够想到刘汝佳书上那种树状数组解法的(比如我),当然我也是看了书才来的。书写的真的不错。这道题可以当做树状数组练手。 第二种就是归并排序,实现稍微麻烦了点,但比树状数组好理解得多(本菜首先用的这个方法),总而言之就是在归并排序的时候记录每一个点前面有多少比他大的和比他小的,后面有多少比他大的和小的,归并排序完成后最后再取前面小的跟后面大的相乘,前面大的和后面小的相乘,加起来就行了。但是我实现的这种算法耗时比较多,用C++在850ms左右,用G++超时,不明。 Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator