随笔分类 - ACM / 数学
数学杂项
摘要:1. 四平方和定理 任何一个自然数都能由四个平方和组成 2. a²-(a+1)²-(a+2)²+(a+3)²=4; (a−1)³+(a+1)³+(−a)³+(−a)³=6a; 3 a*b的后导0个数 =a的后导0个数+b的后导0个数 1. zuhe[i][j]=zuhe[i-1][j]+zuhe[i
余数有关
摘要:1. 约瑟夫数论问题 uva1363 我们发现 k/i的整数部分为p 如果k/(i+1)也为p 则有kmod(i+1)=k-(i+1)/p=k-i*p-p=kmodi-p 则为一个等差数列 然后从尾项倒着查.
gym 102263 D 思维+gcd
摘要:https://codeforces.com/group/uVAsoW2Jkj/contest/336856/problem/D 给你一个数组A 让你随便加减数组B任一数 问能否把A全相等 首先 一整个数组可以凑出一个数x=k1*b1+.... 即 x=k*gcd(b1....) 那么如何让A全相等
uva12716 xor与gcd xor得转化思想
摘要:题意 求小于等于n的数对(a,b) 要求gcd(a,b)==a xor b n<=3e7 如果单纯枚举 n^2 一定是T掉的 显然要优化一层循环 又因为 a xor b=c 则a xor c=b 那么把gcd(a,b)看作c 寻找b即可 而c是a的约数 为根号n 则循环化简到nlogn
同余定理 卷积 FFT优化
摘要:#include<bits/stdc++.h> using namespace std; using ll=long long; const int maxn=(1<<20)+5; const double PI=acos(-1); struct Complex { double x,y; Comp
组合数
摘要:组合数求和问题 考虑二项式定理 并带入xy 例1 本质不同的序列指的是含的数字不一样 1 1 2 3 与 1 3 2 1 本质是一样的 其本质就成为了 你有x个数 可以重复 放入m-2个位置中 我们转换思想 变成放+1的挡板 比如中间放2 2 2 ^ 3 ^^ 5 就是放了加1的挡板 但是与普通问题
gcd与exgcd
摘要:int exgcd(int x, int y, int &a, int &b) { if (y == 0) { return a = 1, b = 0, x; } else { int g = exgcd(y, x % y, b, a); b -= x / y * a; return g; } }
FFT 快速傅里叶变换
摘要:前置知识 n阶多项式可以用n+1个点表示(可用线性代数证明) 所以 正常两个n阶多项式相乘 复杂度应该是o(N²) 而将多项式点化(值表达式) 即H(x)=G(x)*F(x) 只需要在G多项式与F多项式找到相对应的点2x+1个 然后相乘 便得到了H 复杂度为o(N) 现在的问题在于 我们如何将多项式
欧拉筛【转载自用
摘要:前言 https://www.luogu.com.cn/blog/HSH/post-shuo-lun-ou-la-shai-fa 正题 欧拉筛法是一种可以筛出质数,欧拉函数,约数个数和约数和的筛法 那么我们就对这些问题逐一进行讲解 在这之前,我们先说几个东西: 1、每一个大于等于2的正整数nn,都有