首页 > 其他分享 >数论分块

数论分块

时间:2024-05-22 13:40:25浏览次数:25  
标签:lfloor le frac 分块 数论 rfloor

有点菜,现在才会。

之前好多篇都烂尾了,这篇不能了。

数论分块往往适合于带有向下取整的题目,即求 \(\sum f(i)g(\lfloor\frac{n}{i}\rfloor)\) 的值。

当经过某些处理后可以 \(O(1)\) 求出 \(f(r)-f(l)\) 的值时,数论分块可以 \(O(\sqrt{n})\) 求出上述式子的值。

向下取整

\(\lfloor a \rfloor\) 等于不超过 \(a\) 的最大整数,即 \(a=b+r(0\le r<1)\) 中 \(b\) 的值。

引理1

对于 \(a,b,c\in\mathbb{Z}\),\(\lfloor\frac{a}{bc}\rfloor=\lfloor\frac{\lfloor\frac{a}{b}\rfloor}{c}\rfloor\),交换 \(bc\) 同理。

证明

令 \(\frac{a}{b}=\lfloor\frac{a}{b}\rfloor+r(0\le r<1)\)。

\(\lfloor\frac{a}{bc}\rfloor=\lfloor\frac{a}{b}\times\frac{1}{c}\rfloor=\lfloor(\lfloor\frac{a}{b}\rfloor+r)\times\frac{1}{c}\rfloor=\lfloor\frac{\lfloor{a}{b}\rfloor}{c}+\frac{r}{c}\rfloor=\lfloor\frac{\lfloor\frac{a}{b}\rfloor}{c}\rfloor\)。

利用到了 \(\lfloor\frac{x+r}{c}\rfloor=\lfloor\frac{x}{c}\rfloor\),其中 \(x,r,c\in\mathbb{Z}\),\(0\le c<1\)。证明考虑讨论 \(x\) 和 \(c\) 的正负。

引理2

标签:lfloor,le,frac,分块,数论,rfloor
From: https://www.cnblogs.com/BYR-KKK/p/18206094

相关文章

  • 暑假数论
    同步发表前言因为\(2025\)届暑假的时候tad疯狂的在讲课,而且用了很多高端的东西和证明导致我在暑假的时候数论板块几乎没有听懂,所以我决定写下这篇文章不让当时的悲剧重演。本篇文章都只讲结论,因为证明分复杂而且没有什么用,在暑假记住结论就好了,至于证明的坑后面会填。欧拉......
  • 欧拉函数、整除分块和扩展欧几里得
    欧拉函数欧拉函数(写作\(\varphi(x)\)),表示\(i\in[1,x]且\gcd(i,x)=1\)的\(i\)的数量。乍一看好像很难求,但我们先考虑最简单的情况,即\(x\in\mathbb{P}\)(\(\mathbb{P}\)表示质数集)的情况。首先很容易看出\(\varphi(x)=x-1\),因为\(x\in\mathbb{P}\),所以\(\foralli......
  • 【CodeChef】Origin(数论)
    题目大意:\(f(x)=\begin{cases}x,1\lex\le9\\f(x的各数位之和),x>9\\\end{cases}\)求\(\sum_{i=1}^{n}f(i)\)。根据打表找规律,我们会发现\(f(x)=(x-1)\bmod9+1\)。所以\(\sum_{i=1}^{n}f(i)\)\(=\sum_{i=1}^{\lfloor\frac{n}{9}\rfloor\cdot9}f(x)+\sum_{i=\l......
  • [数论] 二项式反演
    菜就多练,输不起就别玩,不会就是不会。二项式推论\(1.\)\(\tbinom{n}{m}=\tbinom{n}{n-m}\)\(2.\)\(\tbinom{n}{m}=\frac{n}{m}\tbinom{n-1}{m-1}\)\(3.\)\(\sum\limits_{i=0}^nC_n^i=2^n\)证明:拆\((1+1)^n\)\(4.\)\(\sum\limits_{i=0}^n(-1)^iC_n^i=0\)特殊的,......
  • 分块 学习笔记
    什么是分块分块,顾名思义是一种将数据分成多块,以实现一些功能的算法。分块算法实质上是一种是通过将数据分成多块后在每块上打标记以实现快速区间修改,区间查询的一种算法。其均摊时间复杂度为\(O(\sqrt{n})\)分块的具体操作分块voidcreate(){ t=sqrt(n); for(inti=1;i<......
  • [数论] 原根
    书接上回...我们知道,我们在使用FFT时,靠的是单位根\(\omega\)。数学家证明这是复数域中唯一符合条件的数。可是它的浮点误差和带来的巨大运算时间使我们有点不能接受。于是,我们想想能不能找个替代品替代掉\(\omega\)。于是,原根就出现了!原根的引入阶对于一个数\(x\),在......
  • 2024ICPC武汉邀请赛-G.Pack-数论分块、整除运算相关的不等式
    link:https://codeforces.com/gym/105143Groupcontests:https://codeforces.com/group/DWEH34LQgT/contest/521901题意:有\(n\)件\(A\)物品,\(m\)件\(B\)物品,两种物品价值分别是\(a,b\),若干件\(A\)和若干件\(B\)可以打包成一个商品,打包尽可能多的商品的情况下让剩余的......
  • [学习笔记] 乘性函数 - 数论
    [SDOI2012]Longge的问题我们要求\(\sum\limits_{i=1}^n\gcd(i,n)\),但\(gcd\)没啥卵用,所以尝试给这n个正整数分组。对于\(gcd(i,n)=1\)的数给他们归到\(G(1)\)这个集合里去,当然,这个集合元素的数量为\(\phi(n)\)。对于\(gcd(i,n)=2\)的数归到\(G(2)\)这个集合里去......
  • [数论] 复数
    从小学我们就知道\(i=\sqrt{-1}\)。复数一般写作\(a+bi\)复数四则运算加法:\((a+bi)+(c+di)=(a+c)+(b+d)i\)减法就是取个相反数。乘法:\((a+bi)\times(c+di)\)\(=ac+(ad+bc)i+bd\timesi^2\)\(=(ac-bd)+(ad+bc)i\)共轨复数\(a+bi\)的共轨复数是\(a-bi\),它们相......
  • 数论进阶
    数论进阶原根与阶阶若\(a,p\)互质,定义\(a\)在模\(p\)意义下的阶为最小的正整数\(t\)满足\(a^t\modp=1\)。\(a\)在模\(p\)意义下的阶记作\(ord_p(a)\),\(a^{ord_p(a)}\modp=1\)。对于整数\(k\),\(a^k\equiv1(\modp)\)当且仅当\(ord_p(a)|k\)。计算......