自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 高斯消元

#include<bits/stdc++.h>using namespace std;const double eps=1e-7;int n,flag=1;double a[109][109],x[109];void Gauss(){ for(int i=1; i<=n; i++) { int maxi=i; for(int j=i+1; j<=n; j++) if(fabs(a[j][i])-fab

2020-10-31 18:58:27 69

原创 二维树状数组

void update(int x,int y,ll d){ while(x<=n){ int tmp=y; while(tmp<=m) c[x][tmp]+=d,tmp+=tmp&-tmp; x+=x&-x; }}ll query(int x,int y){ ll res=0; while(x<=n){ int tmp=y; whil

2020-10-29 13:57:50 74

原创 分治FFT的优化

给定两个数组aaa,bbb,求ccc满足ci=∑j=0iajbi−j0≤i≤n−1c_i=\sum_{j=0}^{i}a_jb_{i-j}\quad 0\le i\le n-1ci​=j=0∑i​aj​bi−j​0≤i≤n−1如果aaa或者bbb有一段前缀为000,比如a0=a1=a2=...=ak=0a_0=a_1=a_2=...=a_k=0a0​=a1​=a2​=...=ak​=0,那么不用计算就知道了c0=c1=c2=...=ck=0c_0=c_1=c_2=...=c_k=0c0​=c1​=c

2020-10-27 22:47:15 183

原创 莱布尼茨求导公式

莱布尼茨公式f(n)f^{(n)}f(n)表示对函数fff求nnn次导,则有(f∗g)n=∑i=0n(ni)f(i)g(n−i)(f*g)^n=\sum_{i=0}^{n}{n\choose i}f^{(i)}g^{(n-i)}(f∗g)n=i=0∑n​(in​)f(i)g(n−i)证明设h(i,j)h(i,j)h(i,j)表示f(i)g(j)f^{(i)}g^{(j)}f(i)g(j)的系数,h(0,0)=1h(0,0)=1h(0,0)=1,则有递推式h(i,j)=h(i−1,j)+h(i,

2020-10-26 23:00:47 6589

原创 食物

题目:BZOJ3028BZOJ3028BZOJ3028一个人要带nnn个物品,共有888种物品,每种的限制分别如下:偶数个,000或111个,000或111或222个,奇数个,444的倍数个,000或111或222或333个,000或111个,333的倍数个。求方案数。思路:对每个物品构造生成函数,然后相乘11−x2∗(1+x)∗1−x31−x∗x1−x2∗11−x41−x41−x∗(1+x)∗11−x3=x(1−x)4\begin{aligned}&\frac{1}{1-x^2}*(

2020-10-26 22:18:43 157

原创 白兔的刁难

题目:https://ac.nowcoder.com/acm/problem/15254?&headNav=acm给你nnn,kkk,求∀0≤t≤k−1\forall 0\le t\le k-1∀0≤t≤k−1st=[∑k∣i,0≤i+t≤n(ni+t)]  mod  998244353s_t=\Big[\sum_{k|i,0\le i+t\le n}{n\choose i+t}\Big]\;mod\;998244353st​=[k∣i,0≤i+t≤n∑​(i+tn​)]mod998244

2020-10-25 21:50:55 104

原创 单位根反演

单位根反演[n∣k]=1n∑i=0n−1ωnki[n|k]=\frac{1}{n}\sum_{i=0}^{n-1}\omega^{ki}_n[n∣k]=n1​i=0∑n−1​ωnki​证明当n∣kn|kn∣k时,设k=npk=npk=np,则1n∑i=0n−1ωnnpi  mod  n=1n∑i=0n−1ωn0=1\frac{1}{n}\sum_{i=0}^{n-1}\omega^{npi\;mod\;n}_n=\frac{1}{n}\sum_{i=0}^{n-1}\omega^0_n=1n

2020-10-24 20:27:21 180

原创 LJJ 学二项式定理

题目:https://loj.ac/problem/6485给定n,s,a0,a1,a2,a3n,s,a_0,a_1,a_2,a_3n,s,a0​,a1​,a2​,a3​,求[∑i=0n(ni)siai  mod  4]  mod  99824453\Big[\sum_{i=0}^{n}{n\choose i}s^ia_{i\;mod\;4}\Big]\;mod\; 99824453[i=0∑n​(in​)siaimod4​]mod99824453思路:单位根反演[n∣k]=1n∑i=0n

2020-10-24 20:17:28 201

原创 多项式除法

给定多项式F(x)F(x)F(x)和G(x)G(x)G(x),求F(x)F(x)F(x)除以G(x)G(x)G(x)的商Q(x)Q(x)Q(x)和余数R(x)R(x)R(x)。即F(x)=Q(x)G(x)+R(x)Deg(R)<Deg(G)<Deg(F)F(x)=Q(x)G(x)+R(x)\quad Deg(R)<Deg(G)<Deg(F)F(x)=Q(x)G(x)+R(x)Deg(R)<Deg(G)<Deg(F)首先构造FR(x)=xDeg(F)F(1x)F

2020-10-23 20:15:33 540 3

原创 队列重排

题目:https://ac.nowcoder.com/acm/problem/15614有n(n≤500000)n(n≤500000)n(n≤500000)个人排成一列,把他们解散后重排,使得"重排后前方" 跟"原排列前方" 一样的人不超过k(k<n)k(k<n)k(k<n)个,问有几种方法数,答案请mod(109+7)mod(10^9+7)mod(109+7)输出。举例来说,有五个人编号为1∼51\sim51∼5间的整数,最初的排列由前至后依序为1,2,3,4,51, 2, 3, 4

2020-10-22 21:48:30 377

原创 箱庭的股市

题目:https://ac.nowcoder.com/acm/problem/15550A[0][0]=pA[0][0]=pA[0][0]=p,且A[i][j]={A[i][j−1]i=0,0<j<mmax⁡0≤k≤j{A[i−1][k]+∑l=k+1jA[i−1][l]j−k}1≤i,0≤j<mA[i][j]=\begin{cases}A[i][j-1]\quad i=0,0<j<m\\\max\limits_{0\le k\le j}\{A[i-1][k]+\s

2020-10-22 21:05:54 99

原创 造一造

题目:https://ac.nowcoder.com/acm/problem/15077每次你可以入栈一个新元素或者当栈非空时出栈一个元素,nnn个元素必须依次入栈,而WYFWYFWYF希望其中第mmm个元素入栈之后,栈中恰好有kkk个元素,现在他想知道一共有多少种入栈出栈顺序满足这个条件。思路:...

2020-10-21 22:17:19 151

原创 卡特兰数

有一个长度为n+mn+mn+m的010101序列,其中111有nnn个,000有mmm个,要求对于任意的整数k∈[1,2n]k\in [1,2n]k∈[1,2n],数列的前kkk个数中,111的个数不少于000。方案数为(n+mn)−(n+mn+1)=(n+mn)n+1−mn+1{n+m\choose n}-{n+m\choose n+1}={n+m\choose n}\frac{n+1-m}{n+1}(nn+m​)−(n+1n+m​)=(nn+m​)n+1n+1−m​...

2020-10-21 21:00:02 70

原创 数学归纳法证明差分公式

nnn阶差分Δnf(x)=∑i=0n(−1)n−i(ni)f(x+i)\Delta^nf(x)=\sum_{i=0}^{n}(-1)^{n-i}{n\choose i}f(x+i)Δnf(x)=i=0∑n​(−1)n−i(in​)f(x+i)证明:首先当n=1n=1n=1时成立当i≤n−1i\le n-1i≤n−1时Δif(x)\Delta^if(x)Δif(x)都成立,则Δnf(x)=Δ(Δn−1f(x))=Δn−1f(x+1)−Δn−1f(x)=∑i=0n−1(−1)n−1−i(n−1i)

2020-10-19 20:39:51 1739

原创 迪利克雷卷积,莫比乌斯反演,杜教筛

常见积性函数μ(n)={1,i=10,n无2次方以上的素因数(−1)k,k为不同素因数的种类\mu(n)=\begin{cases}1,&i=1\\0,&n无2次方以上的素因数\\(-1)^k,&k为不同素因数的种类\end{cases}μ(n)=⎩⎪⎨⎪⎧​1,0,(−1)k,​i=1n无2次方以上的素因数k为不同素因数的种类​φ(n)=∑i=1n[(n,i)=1]\varphi(n)=\sum_{i=1}^{n}[(n,i)=1]φ(n)=∑i=1n​[(n,i)=

2020-10-15 23:17:54 178

原创 白兔的式子

题目:https://ac.nowcoder.com/acm/problem/15251已知f(1,1)=1f(1,1)=1f(1,1)=1,有f(i,j)=a∗f(i−1,j)+b∗f(i−1,j−1)i≥2,1≤j≤if(i,j)=a*f(i-1,j)+b*f(i-1,j-1)\quad i\ge 2,1\le j\le if(i,j)=a∗f(i−1,j)+b∗f(i−1,j−1)i≥2,1≤j≤i对于其他情况f(i,j)=0f(i,j)=0f(i,j)=0有TTT组询问,每次给出a,b,

2020-10-15 21:06:10 130

原创 Problem F: Frightful Formula

题目:https://codeforces.com/gym/101480给一个n∗nn*nn∗n的矩阵,告诉第一行和第一列的数,并且有递推式F(i,j)=aF(i,j−1)+bF(i−1,j)+c2≤i,j≤nF(i,j)=aF(i,j-1)+bF(i-1,j)+c\quad 2\le i,j\le nF(i,j)=aF(i,j−1)+bF(i−1,j)+c2≤i,j≤n求F(n,n)  mod  106+3F(n,n)\;mod\;10^6+3F(n,n)mod106+3,2≤n≤200000

2020-10-15 16:33:13 128

转载 Apprentice Learning Trajectory

题目:在数轴上有nnn个房子,每个房子开放的时间区间为[l[i],r[i]][ l[ i ] , r[ i ] ][l[i],r[i]],当多个房子同时处在开放时,可选择一个房间铸剑,需要t[i]t[ i ]t[i]秒(不能中断),问最多能铸多少剑?思路:https://blog.csdn.net/qq_45458915/article/details/108379858?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromM

2020-10-14 21:11:16 229

原创 牛顿迭代

给定多项式G(x)G(x)G(x),已知A(x)A(x)A(x)满足G(A(x))≡0  mod  xnG(A(x))\equiv 0\;mod\;x^nG(A(x))≡0modxn求模xnx^nxn意义下的A(x)A(x)A(x)倍增法首先解出[x0]G(A(x))≡0  mod  x\begin{aligned}[x^0]G(A(x))\equiv 0\;mod\;x\end{aligned}[x0]G(A(x))≡0modx​这时候A(x)  mod  xA(x)\;mod\;

2020-10-12 22:01:16 98

原创 区间GCD

题目:给nnn个数,最大值为MAXMAXMAX,用nlogMAXnlog^{MAX}nlogMAX的算法预处理区间gcdgcdgcd思路:当右端点确定时,左端点越往左,gcdgcdgcd非递增,并且如果减小,则每次至少除222,所以gcdgcdgcd的个数最多logMAXlog^{MAX}logMAX个,所以我们可以dpdpdp预处理出每种gcdgcdgcd的最左端点。用vectorvectorvector存(x,y)(x,y)(x,y),xxx表示gcdgcdgcd,yyy表示左端点,左端点从大到小

2020-10-10 12:04:21 298

原创 BZOJ 3771

题目:BZOJ3771BZOJ 3771BZOJ3771有nnn个不同的数,可以取出一个,两个,或三个相加。问各种价值的方案数(顺序不同算一种)。思路:

2020-10-09 19:42:18 89

原创 BZOJ3456: 城市规划

题目:求nnn个点的无向连通图个数思路:设G(n)G(n)G(n)表示无向图的个数,F(n)F(n)F(n)表示nnn个点的无向图连通的个数,则G(n)=2(n2)枚举每条边选不选G(n)=∑i=1n(n−1i−1)F(i)⋅2(n−i2)枚举1号点所在连通块有几个点\begin{aligned}G(n)&=2^{{n\choose 2}}\quad 枚举每条边选不选\\G(n)&=\sum_{i=1}^{n}{n-1\choose i-1}F(i)\cdot2^{{n-i\c

2020-10-09 18:21:40 76

原创 Be Geeks!

题目:https://ac.nowcoder.com/acm/contest/7817/B给你nnn个数,设G(i,j)=gcd(ai,ai+1...aj)G(i,j)=gcd(a_i,a_{i+1}...a_j)G(i,j)=gcd(ai​,ai+1​...aj​),M(i,j)=max(ai,ai+1...aj)M(i,j)=max(a_i,a_{i+1}...a_j)M(i,j)=max(ai​,ai+1​...aj​),计算∑1≤i≤j≤nG(i,j)⋅M(i,j)\sum_{1\le i\

2020-10-07 15:50:41 189

原创 codeforces

题目:https://ac.nowcoder.com/acm/problem/21314牛牛正在打一场CFCFCF比赛时间为TTT分钟,有NNN道题,可以在比赛时间内的任意时间提交代码。第iii道题的分数为a[i]a[i]a[i],题目的分数随着比赛的进行,每分钟减少b[i]b[i]b[i]这是一场比较darkdarkdark的CFCFCF,分数可能减成负数已知第iii道题需要花费c[i]c[i]c[i]的时间解决请问最多可以得到多少分。思路:对于两道题i,ji,ji,j来说,有两种先后顺序,xxx

2020-10-04 21:58:45 617

原创 Playing games

题目:https://ac.nowcoder.com/acm/contest/295/H有n个数,选出尽量多的数使得异或和为000。1≤n≤500000,0≤ai≤5000001\le n\le 500000,0\le a_i\le 5000001≤n≤500000,0≤ai​≤500000思路:问题等价于选出尽量少的数使得异或和为全部数的异或和valvalval。根据线性基思想可以推得整个集合的异或集合可以被不超过191919个数的异或集合表示.因此答案也不超过191919。所以可以二分答案。

2020-10-01 21:59:55 1958

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除