知识小点积累

1.循环节

f(n)=af(n1)+bf(n2),f(1)=c,f(2)=d
f(n)%p循环节:当c是膜p的二次剩余,枚举n=(p-1)的因子,
       当c是膜p的非二次剩余,枚举n=(p-1)(p+1)的因子。

2.二次剩余

d是膜p的二次剩余当且仅当
d(p1)/21(mod p)
d是膜p的非二次剩余当且仅当
d(p1)/21(mod p)

3.GCD(x,y)==k的个数

GCD(x,y==kx(1,n),y(1,m)

//GCD(x,y)==i的个数f[i];
if(n<m) swap(n,m);
ll ans=0;
for(ll i=n;i;i--)
{
    f[i]=(n/i)*(m/i);
    for(ll j=2*i;j<=n;j+=i)
         f[i]-=f[j];
}

4.二叉树的个数

n个节点的二叉树的个数

Hn=1/(n+1)Cn2n

n个节点二叉树叶子数的个数

Hn=nHn1

5.高次幂取膜

ab%p=aφ(p)+b%φ(p)   b>=φ(p)
φ(p)p

6.除法取膜

ab%p=a%pbb
当p是质数是可以用 ab1%p

7.逆元

b1%p=bp2%p

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值