取整运算与数论分块
前言
注意力惊人。
1. 取整运算
取整运算有好多种,各自有不同的符号,下面列举一下:
- \(\left \lfloor x \right \rfloor\) (
$\left \lfloor x \right \rfloor$
) 表示向下取整,也就是把 \(x\) 设为小于等于自己的最大整数,下面是三个例子:
\[\left \lfloor 3.14 \right \rfloor = 3 \\
\left \lfloor -3.14 \right \rfloor =-4\\
\left \lfloor 3 \right \rfloor =3\]
- \(\left \lceil x \right \rceil\) (
$\left \lceil x \right \rceil$
) 表示向上取整,就是把 \(x\) 设为大于等于自己的最小整数,下面是三个例子:
\[\left \lceil 3.14 \right \rceil =4\\
\left \lceil -3.14 \right \rceil =3\\
\left \lceil 3 \right \rceil =3 \]
-
$\left [ x \right ] $ (
$\left [ x \right ] $
)一般也是向下取整的意思。 -
\(\left \{ x \right \}\) (
$\left \{ x \right \}$
)表示实数 \(x\) 的小数部分,使用时不能与表示集合的花括号混淆,且要注意转义符号\
。
由它的定义易得:
\[\left \{ x \right \} =x-\left \lfloor x \right \rfloor
\]
2. 取整运算的一些性质
拆解取余运算
用这些符号表示一个数:
\[x=\left \lfloor x \right \rfloor + \left \{ x \right \}
\]
小学数学我们学过,被除数 \(x\) 除以另一个不为 \(0\) 的整数除数 \(y\) 会得到一个商和一个可能为 \(0\) 的余数,用这些符号表示一下:
\[\text{商:}\left \lfloor \dfrac{x}{y} \right \rfloor
\]
\[\text{余数:} x\bmod y
\]
根据被除数等于除数乘以商 \(+\) 余数:
\[x=y\left \lfloor \dfrac{x}{y} \right \rfloor + x\bmod y
\]
于是我们可以得出取余运算的一个拆解:
\[x\bmod y=y\left \lfloor \dfrac{x}{y} \right \rfloor - x
\]
许多推式子题目都要用到这种转换,下面我们在数论分块中也要用到。
幂等性
\[\left \lfloor \left \lfloor x \right \rfloor \right \rfloor =\left \lfloor x \right \rfloor \\
\left \lceil \left \lceil x \right \rceil \right \rceil = \left \lceil x \right \rceil \\
\left \{ \left \{ x \right \} \right \} = \left \{ x \right \} \]
人话:做很多次运算等于做一次运算。
对于 \(\left \lfloor \right \rfloor\) 和 \(\left \lceil \right \rceil\),还有:
\[\left \lfloor \left \lceil x \right \rceil \right \rfloor = \left \lceil x \right \rceil \\
\left \lceil \left \lfloor x \right \rfloor \right \rceil =\left \lfloor x \right \rfloor \\\]
人话:只关心最内层取整号的作用。
但是 \(\left \{ \right \}\) 符号没有此性质。
互反律
\[\left \lfloor x \right \rfloor + \left \lceil -x \right \rceil =0\\
\left \lceil x \right \rceil +\left \lfloor -x \right \rfloor =0
\]
由此可以得到:
\[-\left \lfloor x \right \rfloor =\left \lceil -x \right \rceil\\
-\left \lceil x \right \rceil =-\left \lfloor -x \right \rfloor \]
另外还有:
\[\left \lfloor x \right \rfloor + \left \lfloor -x \right \rfloor =\left\{\begin{matrix}
0\ \ \ \ \ \ (x\in \mathbb{Z} ),\\
-1\ \ \ (x \notin \mathbb{Z} ),
\end{matrix}\right. \]
\[\left \lceil x \right \rceil + \left \lceil -x \right \rceil =\left\{\begin{matrix}
0\ \ \ \ \ \ (x\in \mathbb{Z} ),\\
1\ \ \ \ \ \ (x \notin \mathbb{Z} ),
\end{matrix}\right. \]
\[\left \{ x \right \} + \left \{ -x \right \} =\left\{\begin{matrix}
0\ \ \ \ \ \ (x\in \mathbb{Z} ),\\
1\ \ \ \ \ \ (x \notin \mathbb{Z} ),
\end{matrix}\right.\]
与整数的关系
\[x-1<\left \lfloor x \right \rfloor \le x \le \left \lceil x \right \rceil < x+1
\]
提取整数项
\(\forall x\in \mathbb{R},n\in \mathbb{Z}\), 有: