数学
今天也吃瓜
空空
展开
-
数论:快速乘
题目来源:点击这里#include<bits/stdc++.h>using namespace std;typedef long long ll;ll q_mul( ll a, ll b, ll mod ){//快速乘 long long ans = 0; while(b){ if(b & 1){ b--; ans =(ans+ a)%mod; } b /= 2;原创 2020-12-01 18:03:42 · 71 阅读 · 0 评论 -
数论分块
#include<cstdio>#include<algorithm>#include<iostream>#include<vector>#include<cstring>#include<cmath>using namespace std;typedef long long ll;int main(){//求1<=i<=n,求sum(k mod i);正常O(n),数论分块O(sqrt(n)) l原创 2020-11-20 15:58:07 · 105 阅读 · 0 评论 -
数论:min25筛求sum(1,n)
#include<cstdio>#include<algorithm>#include<iostream>#include<vector>#include<cstring>#include<cmath>using namespace std;typedef long long ll;const int mxm=2e5+5;const ll N=1e10+5;bool isprime[mxm];ll prime[原创 2020-11-19 19:52:03 · 148 阅读 · 0 评论 -
数论:min25筛求n个1相加
#include<cstdio>#include<algorithm>#include<iostream>#include<vector>#include<cstring>#include<cmath>using namespace std;typedef long long ll;const int mxm=2e5+5;const ll N=1e10+5;bool isprime[mxm];ll prime[原创 2020-11-19 19:06:58 · 632 阅读 · 0 评论 -
数论:min25筛求素数个数
#include<cstdio>#include<algorithm>#include<iostream>#include<vector>#include<cstring>#include<cmath>using namespace std;typedef long long ll;const int mxm=2e5+5;const ll N=1e10+5;bool isprime[mxm];ll prime[原创 2020-11-19 14:59:23 · 682 阅读 · 0 评论 -
博弈论:ccpc2020nim
#include<cstdio>#include<algorithm>#include<iostream>#include<vector>#include<cstring>#include<cmath>using namespace std;typedef long long ll;const int mxm=2e5+5;bool isprime[mxm];int num_pri=0;int prime[mxm]原创 2020-11-18 16:17:04 · 145 阅读 · 0 评论 -
数论:min25筛
#include<cstdio>#include<algorithm>#include<iostream>#include<vector>#include<cstring>#include<cmath>using namespace std;typedef long long ll;const int mxm=2e5+5;const ll N=1e10+5;bool isprime[mxm];ll prime[原创 2020-11-18 16:22:14 · 153 阅读 · 1 评论 -
数论:莫比乌斯函数
莫比乌斯函数μ(n)的定义域是Nμ(1)=1当n存在平方因子时,μ(n)=0当n是素数或奇数个不同素数之积时,μ(n)=-1当n是偶数个不同素数之积时,μ(n)=1原创 2020-11-10 19:15:34 · 377 阅读 · 0 评论 -
数论:Stirling数
第一类Stirling数有n个仓库,每个仓库有2把钥匙,共2n把钥匙,有n位保管员,保管员分别属于k个不同的部,部中的保管员数量和他们管理的仓库数量一样多,例如第i个部有m个管理员,保管m个仓库,如何放钥匙,使得同部的所有保管员能打开本部的所有仓库,但是无法打开其他的仓库。s[n][k]=s[n-1][k-1]+(n-1)s[n-1][k] ,1<=k<=ns[0][0]=1,s[k][0]=0 , 1<=k<=n第二类Stirling数把n个不同的球分配到k个相同的盒子里原创 2020-11-08 16:04:56 · 221 阅读 · 0 评论 -
数论:扩展欧拉定理
#include<cstdio>#include<stack>#include<iostream>#include<queue>#include<algorithm>#include<iterator>#include<set>#include<string>#include<cstring> #include<map>#include<vector>us原创 2020-11-08 10:34:09 · 81 阅读 · 0 评论 -
数论:欧拉函数
#include<cstdio>#include<stack>#include<iostream>#include<queue>#include<algorithm>#include<iterator>#include<set>#include<string>#include<cstring> #include<map>#include<vector>us原创 2020-11-08 09:53:52 · 148 阅读 · 1 评论 -
数论:错排问题
n个有序的元素应有n!个不同的排列,如若一个排列使得所有的元素不在原来的位置上,则称这个排列为错排。f[0]=0;f[1]=1;f[i]=(i-1)*(f[i-1]+f[i-2])原创 2020-11-07 23:40:32 · 57 阅读 · 0 评论 -
数论:卢卡斯定理
#include <cstdio>#include <cstring>#include <vector>#include<queue>#include<string>#include<iostream>#include <algorithm>using namespace std;typedef long long ll;ll n,m,p;ll c[100005];ll fastpow(ll a,ll原创 2020-11-07 21:15:56 · 113 阅读 · 0 评论 -
数论:中国剩余定理
#include <cstdio>#include <cstring>#include <vector>#include<queue>#include<string>#include<iostream>#include <algorithm>using namespace std;typedef long long ll;ll a[20],b[20];//a是除数 ,b是余数 ll ans[20];ll原创 2020-11-07 19:35:18 · 69 阅读 · 1 评论 -
数论:逆元
#include <cstdio>#include <cstring>#include <vector>#include<queue>#include<string>#include<iostream>#include <algorithm>typedef int ll;using namespace std;void exgcd(ll a,ll b,ll &x,ll &y) { if(!原创 2020-11-07 16:06:50 · 112 阅读 · 0 评论 -
数论
裴蜀定理:设a,b不全为0,则存在整数x,y,使得ax+by=gcd(a,b)原创 2020-12-05 19:10:13 · 152 阅读 · 0 评论