AT_abc280_g [ABC280G] Do Use Hexagon Grid 2

题目描述

有一个如下所示的无限大的六边形网格。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_abc280_g/992f7292cb6316e33ee0c40605e4a519c5d857df.png) 六边形的格子可以用两个整数 $i,j$ 表示为 $(i,j)$。 格子 $(i,j)$ 与以下 $6$ 个格子通过边相邻: - $(i-1,j-1)$ - $(i-1,j)$ - $(i,j-1)$ - $(i,j+1)$ - $(i+1,j)$ - $(i+1,j+1)$ 定义两个格子 $X,Y$ 之间的距离为:从格子 $X$ 沿着相邻的格子移动到格子 $Y$ 所需的最小移动次数。 例如,格子 $(0,0)$ 与格子 $(1,1)$ 的距离是 $1$,格子 $(2,1)$ 与格子 $(-1,-1)$ 的距离是 $3$。 现在给定 $N$ 个格子 $(X_1,Y_1),\ldots,(X_N,Y_N)$。 从这 $N$ 个格子中选择至少一个格子的方案中,要求所选的任意两个格子的距离都不超过 $D$。请问有多少种不同的选择方法? 请输出答案对 $998244353$ 取模的结果。

输入格式

输入以如下格式从标准输入读入。 > $N$ $D$ > $X_1$ $Y_1$ > $\vdots$ > $X_N$ $Y_N$

输出格式

请输出答案。

说明/提示

## 限制条件 - $1\leq N\leq 300$ - $-10^9\leq X_i,Y_i\leq 10^9$ - $1\leq D\leq 10^{10}$ - $(X_i,Y_i)$ 互不相同 - 输入均为整数 ## 样例解释 1 可以选择的格子集合有 $\{(0,0)\},\{(0,1)\},\{(1,0)\},\{(0,0),(0,1)\},\{(0,0),(1,0)\}$ 共 $5$ 种。 由 ChatGPT 4.1 翻译