基本算法
一些基本算法知识
矩阵不需要秩
你被击倒多少次都不重要,重要的是你有多少次爬了起来。
展开
-
二维差分矩阵
这里构造差分矩阵其实就是在全部都是0的b矩阵中插入a[i][j],这样就可以构造出差分矩阵,注意insert函数的写法,这样在差分矩阵中,可以将左上角为x1,y1,右下角x2,y2的矩阵中每个元素加个c。这里构造差分矩阵就把把每个点想象成一个矩阵,比如只插入一个a[2][3]时,将刚开始全0的b数组,每个元素的加或减,这样求b数组的前缀和的时候,只有a[2][3]为数,其余都是0.以此类推,可以a数组的每个元素插入到b数组中,这样b数组的前缀和就是a数组,可以得到整个差分矩阵。原创 2023-09-12 20:18:22 · 42 阅读 · 0 评论 -
离散化
这里如果按照朴素算法的话,就需要2e9的空间来存储,其中用到的区间只有n+2m个数,所以很多数是完全用不到的。举个例子:-900,0,12321,21332143214这四个位置上+c,其中这么多数的话都是0,没有任何意义,所以我们采用离散化。直接映射成1,2,3,4.用find函数,注意这里二分返回的话加一,因为要用前缀和。注意这里进行数组去重。原创 2023-09-13 22:46:17 · 28 阅读 · 0 评论 -
高精度计算
一个非常的大的数除以一个较小的数,计算商和余数。可能两个数有个为0,所以要特别判断一下。两个非常大的数相减,可能为负数。一个非常大的数乘以一个很小的数。不需要判断大数是否为0。两个非常大的数相加.原创 2023-10-15 21:32:53 · 144 阅读 · 0 评论