首页 > 兔子的逆序对
头像 pphkaa
发表于 2020-04-10 17:50:24
拖了很久今天终于下定决心来解决这道题了,这么经典的题目居然没有人写题解,本小白就来水一发(大佬勿喷),希望能对大家有点帮助,主要讲下思想和两种方法的实现,感觉难点问题官方题解已经讲的很清楚了。归并排序解法:首先我们来看下为什么归并排序可以计算逆序对对数量:比如一个数列为 5 4 1 2 3首先在归并 展开全文
头像 hahaxixiwx
发表于 2022-02-05 20:24:54
逆序数对的求法: 冒泡排序法 归并排序法(下面介绍的方法) (一)逆序数 解题思路: 利用归并排序求逆序数对,每当右边的数大于左边的数时,左边剩余的数就是逆序对数 解题代码: #include<bits/stdc++.h> using namespace std; int a[10 展开全文
头像 在刷题的单身狗很开心
发表于 2023-09-02 18:43:42
题目链接:1008-兔子的逆序对_2021秋季算法入门班第二章习题:递归、分治 (nowcoder.com) 本题求逆序对的思路还是按照归并排序的过程去求解,但不同之处在于本题需要不断的变换区间里面数的排列。首先考虑在每一次变换之后都去求解逆序对的数量肯定是会超时的。 然后可以联想到如果 展开全文
头像 sunrise__sunrise
发表于 2020-05-29 14:14:36
时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262144K 64bit IO Format: %lld 题目描述 兔子最近喜欢上了逆序对。 一个逆序对(i,j) 需要满足 i < j 且 ai > aj 兔子觉得只是求一个序列的逆 展开全文
头像 brbrbr
发表于 2022-02-24 01:12:33
反转一个区间 不影响区间内的数与区间外的数构成的逆序对个数。 对于这个区间,假设它原来有xxx个逆序对,反转后变成N−x,NN-x,NN−x,N为序对个数,则 cnt全部=cnt区间外+x1◯cnt′全部=cnt区间外+N−x2◯cnt_{全部}=cnt_{区间外}+x \qquad \te 展开全文
头像 吃花椒的妙酱
发表于 2021-01-30 01:17:08
//有点坑啊,我用cout输出就超时,改用printf就ac了 #include <iostream> #include <vector> #define minn -10000 using namespace std; typedef long long ll; inli 展开全文
头像 修补骑士
发表于 2025-04-13 20:18:19
我看不少人和我一样,这样写会过60%其他TLE,好像是卡常或者别的什么? 不过思路已经确定了,下面这串仅供参考 ">#define int long long using namespace std; //修补骑士之前写过树状数组,加权线段树,以及归并排序的方法 //对于树状数组与线段树,都是利用 展开全文
头像 ryuuko_
发表于 2025-02-28 20:08:50
思路没问题 反转一段并不会影响剩余段的逆序数 只会影响该段的逆序数 那么只需要考虑原始序列的逆序对的奇偶性和反转之后序列的逆序对的奇偶性 翻转一段序列会使原先非逆序对的变成逆序对 原先是逆序对的变成非逆序对 而逆序对的个数加上非逆序对的个数为所有可能的二元组 那么就是C(n, 2) 只需考虑C(n, 展开全文
头像 冰雅
发表于 2022-12-20 22:46:23
题目 链接:https://ac.nowcoder.com/acm/problem/20861 来源:牛客网 兔子最近喜欢上了逆序对。 一个逆序对(i,j) 需要满足 i < j 且 ai > aj 兔子觉得只是求一个序列的逆序对个数太没有意思了。 于是兔子想到了一个更有趣的问题! 兔子 展开全文
头像 CalvinLin011010
发表于 2022-07-26 17:37:48
题目链接: https://ac.nowcoder.com/acm/problem/20861 题面: 兔子最近喜欢上了逆序对。 一个逆序对(i,j) 需要满足 i < j 且 ai > aj 兔子觉得只是求一个序列的逆序对个数太没有意思了。 于是兔子想到了一个更有趣的问题! 兔 展开全文