![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模板
文章平均质量分 58
胡牧之.
此人很懒,但还添加了简介
展开
-
【模板】智乃酱的静态数组维护问题多项式(多次差分数组——多项式处理)
题目 原题链接 问题描述 思路 差分数组的优点在于牵一发而动全身,通过处理一个位置便可以将后续位置的值都改变。 我们此时面临的操作是对区间处理,而且处理不是简单的加上某个值,而是对位于[l,r][l,r][l,r]中的a[i]a[i]a[i]加上f(i)f(i)f(i),f(i)f(i)f(i)是一个最高阶数不超过555的多项式。 1.引入 在题目小W的糖果中,需要处理平方差分数组,也就是对于位置lll以及其右侧的每个位置需要加上i2i^2i2,其实这也是一个特殊的多项式,我们通过进行333次差分:原创 2022-02-25 16:06:47 · 548 阅读 · 0 评论 -
【模板】带模意义下的矩阵乘法和逆矩阵
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int MAX_MAT = 2; const long long mod = 1e9 + 7; struct Mat { ll a[MAX_MAT][MAX_MAT]; Mat() { for (int i = 0; i < MAX_MAT; ++i) { for (原创 2022-02-22 17:23:35 · 376 阅读 · 0 评论 -
快速乘模板
文章目录一、介绍1.目的2.原理二、实现代码 一、介绍 1.目的 计算乘法时,可能在结果还未出来时就已经爆掉了,以至于无法正确对结果取模,所以需要用快速乘来把乘法操作进行细分,保证结果取模的正确性。 2.原理 以5∗105*105∗10为例: 将10划分为二进制表达:1001 那么计算5*10就可以划分:5∗(23∗1+22∗0+21∗0+20∗1)5*(2^3*1+2^2*0+2^1*0+2^0*1)5∗(23∗1+22∗0+21∗0+20∗1) 我们的操作就是把乘法划分为这几个项的相加,过程中进行.原创 2021-08-09 21:36:59 · 127 阅读 · 0 评论 -
高精度模板
文章目录一、高精度加法1.分析2.代码二、高精度减法1.分析2.代码三、高精度与低精度乘法1.分析2.代码四、高精度与低精度除法1.分析2.代码五、高精度乘法1.分析2.代码六、高精度除法 一、高精度加法 1.分析 大整数加法 大整数存储:用数组从个位开始存储,方便补位操作,同时最好用vector,方便空间处理和访问大小。 操作:从个位开始操作,每一位由加数,被加数和进位所决定,最后对最高位是否有进位进行判断。 前导0处理:不考虑前导0则可以直接逆序输出,若考虑则先进行判断,找到第一个非0位,保证结果长.原创 2021-08-05 09:44:10 · 609 阅读 · 0 评论