摘要: 对于给定的序列1 2 3,其全排列有6种,按照字典序从小到大即为 0 1 2 3 4 5 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 可以看出,每个全排列序列都唯一对应一个字典序数(从0开始),那么,有什么方法可以根据序列求出其对应的字典序或者根据字典序来推断其对应序列呢 阅读全文
posted @ 2023-04-26 21:23 凪风sama 阅读(9) 评论(0) 推荐(0) 编辑
摘要: next_permutation 是算法库(<algorithm>)里的一个用于求全排列的函数,其定义为 next_permutation(_BidIt _First, _BidIt _Last) 可以看出,对于next_permutation需要可迭代容器的范围(即头尾),然后会根据字典序来对此序 阅读全文
posted @ 2023-04-26 19:55 凪风sama 阅读(18) 评论(0) 推荐(0) 编辑
摘要: vector<int> Div(vector<int>& A, int& B) { vector<int>C; int T = 0;//除数 for (int i = A.size() - 1; i >= 0; i--)//注意,除法模拟是从最高位开始的 { T = T * 10 + A[i];// 阅读全文
posted @ 2023-04-25 20:47 凪风sama 阅读(7) 评论(0) 推荐(0) 编辑
摘要: vector<int> Sub(vector<int>& A, vector<int>& B)//这里默认长数减去短数 { vector<int> C;//结果向量 int T = 0;//上一位借位标志位 for (int i = 0; i < A.size(); i++) { T = A[i] 阅读全文
posted @ 2023-04-25 20:45 凪风sama 阅读(6) 评论(0) 推荐(0) 编辑
摘要: vector<int> Mul(vector<int>& A, int &B) { vector<int>C; int T = 0; for (int i = 0;i < A.size()||T/*考虑进位位未处理完*/;i++) { if(i<A.size()) T += A[i] * B; C. 阅读全文
posted @ 2023-04-25 20:39 凪风sama 阅读(3) 评论(0) 推荐(0) 编辑
摘要: vector<int> Add(vector<int>& A, vector<int>& B)//采用引用传入vector,避免将其全部复制传值,使用引用会更快 { if (A.size() < B.size())return Add(B , A);//由于有大小位数的处理,我们默认位数较大的那个去 阅读全文
posted @ 2023-04-25 20:38 凪风sama 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 在做这道题之前我们先了解一下棋盘问题 棋盘问题 (qq.com) 对于棋盘问题,我们可以得出对于一个n*n的正方形方格阵如何求其包含的正方形个数 也就是数每个正方形的中间点,然后将其点排列成矩阵,对于其中m*m规格的正方形,其个数为(n-m-1)*(n-m-1)- 现在回到我们这道题,他的要求就更普 阅读全文
posted @ 2023-04-24 16:26 凪风sama 阅读(24) 评论(0) 推荐(0) 编辑
摘要: (29条消息) 不需要考虑mid+1、mid-1的二分查找模板,希望大家都能学会_二分查找如果light mid 不加1_一支彩色铅笔的博客-CSDN博客 非常好的博客,爱来自中国 二分查找为什么总是写错?_哔哩哔哩_bilibili 非常好的视频,爱来自中国 下面给出代码模板,这种二分比y总给出的 阅读全文
posted @ 2023-04-23 23:25 凪风sama 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 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 阅读(9) 评论(0) 推荐(0) 编辑