摘要: 788. 逆序对的数量 - AcWing题库 逆序对,即位置顺序与大小顺序不符的数对,也就是对于一个期望升序的序列Num[],当i<j时,Num[i]>Num[j] 这道题要求求出逆序对的个数,显然在归并排序的过程中我们就是在逐步的消除逆序对,所以我们可以在递归的排序过程中求出逆序对的个数 已知归并 阅读全文
posted @ 2023-04-23 22:11 凪风sama 阅读(19) 评论(0) 推荐(0) 编辑
摘要: void merge_sort(int q[], int L, int R) { if (L >= R)return;//递归中止条件 int mid =(L + R) >> 1; merge_sort(q, L, mid); merge_sort(q, mid + 1,R);//先递归处理左右 i 阅读全文
posted @ 2023-04-23 20:48 凪风sama 阅读(10) 评论(0) 推荐(0) 编辑
摘要: void quick_sort(int* Num, int L, int R) { if (L >= R)return; swap(Num[L], Num[L + R >> 1]); int i = L; int j = R; int Temp = Num[L]; while (i < j) { f 阅读全文
posted @ 2023-04-22 23:20 凪风sama 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 最简单的思想就是将这n个数从小到大排序,然后直接输出下标为K的数,不用想肯定会超时,三个测试点过了,另外两个超时。 那么我想的就是,既然全排序会超时,有没有什么方法可以不用全排序也可以拿出第K小的数呢,我想到了堆这种数据结构,我们不用使用堆排序,而是将数组建堆,不断从堆中拿出当时最小的数,当取出第K 阅读全文
posted @ 2023-04-19 22:16 凪风sama 阅读(23) 评论(0) 推荐(0) 编辑
摘要: P1045 [NOIP2003 普及组] 麦森数 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 想法很简单,我们要做的就是两件事,求2^P-1的位数,求出2^P-1的最后500位数,也就是低五百位,500位想一想常规类型肯定存不下,int到10^9,long long 到10^1 阅读全文
posted @ 2023-04-19 17:16 凪风sama 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 先贴一个快速幂模板 long long int quik_power(int base, int power) { long long int result = 1; while (power > 0) //指数大于0进行指数折半,底数变其平方的操作 { if (power & 1) //指数为奇数 阅读全文
posted @ 2023-04-18 23:38 凪风sama 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 可以知道在处理高精度乘法的时候,我们是不考虑当场进位的,在所有位数都模拟完竖式乘法后才进行逐位进位,这就要求存储每个位的数组保证不会爆掉溢出 众所周知char类型最多只能存储到255,非常非常容易溢出成负数,对于char型数组要考虑每一步乘法都要进位。 而int型数组最大21亿就不用考虑这种问题,当 阅读全文
posted @ 2023-04-18 23:01 凪风sama 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 对于计算比较大的幂的结果时可以采用快速幂来降低时间复杂度 例如求K的n次幂 int Pow(int K, int n) { for (int i = 0; i < n; i++) K *= K; return K; } 最朴素的思想就是直接n次循环,让K自乘n次,但是随着n的增加循环次数会越来越多, 阅读全文
posted @ 2023-04-18 17:54 凪风sama 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 这道题是数论加高精度,高精度倒好说,就是高精度乘法实现,模拟列竖式乘法,但是找出要乘的这几个数实属不容易,没学过数论,只能从题解中学怎么找规律这里引用一下洛谷题解区赞数最高的题解 不知道大家看其他的题解有没有产生很多问号??? (本题解修改了一些第一次提交发现的错误,感谢yhm12345同学指出。) 阅读全文
posted @ 2023-04-18 16:09 凪风sama 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 最简单的思路就是扫描一边所有节点,对每个非地雷节点,去检查一下他八个方向的元素是否有‘*’,有的话就加一 但是逐个写出有点麻烦,我们不妨定义两个增量数组来存储每一次的相对位移,对每次检查只需要遍历这个数组即可 如下 #include<stdio.h> #include<stdlib.h> #incl 阅读全文
posted @ 2023-04-12 18:09 凪风sama 阅读(13) 评论(0) 推荐(0) 编辑