当前你的浏览器版本过低,网站已在兼容模式下运行,兼容模式仅提供最小功能支持,网站样式可能显示不正常。
请尽快升级浏览器以体验网站在线编辑、在线运行等功能。

建议使用的浏览器:

谷歌Chrome 火狐Firefox Opera浏览器 微软Edge浏览器 QQ浏览器 360浏览器 傲游浏览器

6381:hex

题目描述
度度熊最喜欢六边形的网格了!!!

![](../../../data/images/C634-1002-1.jpg)

上图由左至右依序是边长为 $1$, $2$ 以及 $3$ 的六边形网格。

另外,每个六边形网格最左侧的格子称之为这个六边形网格的锚点,上图中每个六边形网格的锚点都以蓝色着色。

定义在六边形网格上的坐标系统:相对一个坐标为 $(x, y)$ 的中心格子,其周围格子的坐标定义为下图中所示的值:

![](../../../data/images/C634-1002-2.jpg)

给定一个大小为 $L$ 的六边形主网格,这个六边形主网格的锚点的坐标为 $(1, L)$。这个主网格中每一个格子上都有一个颜色,以 $0$ 至 $61$ 之间的整数代表。对于这个主网格有 $Q$ 个询问,每个询问将会询问这个主网格中某一个六边形子网格的范围中,包含有几个不一样的颜色。

一个询问以三个整数 $<x, y, l>$ 来表示其中一个六边形的子网格,依序为其锚点的坐标 $(x, y)$ 以及其大小 $l$。例如,下图为一个大小 $L = 3$ 的主网格,格子内部的数字为其坐标,而非格子的颜色。绿色边框所包围的子网格是一个锚点坐标为 $(5, 3)$,大小 $l = 2$ 的子网格,以 $<5, 3, 2>$ 表示,同时,红色边框表示 $<3, 1, 1>$ 的子网格。

![](../../../data/images/C634-1002-3.jpg)
输入解释
输入的第一行有一个正整数 $T$,代表接下来有几笔测试资料。

对于每笔测试资料:
第一行有一个正整数 $L$。
接下来的 $2L - 1$ 行输入代表一个大小为 $L$ 的六边形网格。
六边形网格将会透过下列的过程转换至输入的格式:

1. 将每格内代表颜色的数字 $0$~$61$ 按照 0-9a-zA-Z 的顺序对照转换为一个字符,例如 $10$ 转换为 'a',而 $36$ 转换为 'A'。
2. 将每行中的字符由左至右串接起来形成一个字符串,注意两个字符之间并不会安插任何的空格符。
3. 输入中的 $2L - 1$ 行每行会有一个字符串,依序代表编码后由上至下的这 $2L - 1$ 个字符串。

接下来的一行有一个整数 $Q$ 代表接下来有几组询问。
接下来的 $Q$ 行每行有三个正整数 $x$, $y$ 及 $l$,代表一组询问 $<x, y, l>$。

下图为范例测试资料中的六边形网格,格子内显示的数字代表颜色,而非坐标:

![](../../../data/images/C634-1002-4.jpg)

* $1 \le L \le 250$
* 代表六边形网格的字符串中只会有 0-9a-zA-Z 这些字符。
* $0 \le Q \le 3 \times 10^5$
* $1 \le x \le 4L -3$
* $1 \le y \le 2L - 1$
* $1 \le l \le L$
* $(x, y)$ 一定是给定的六边形网格中合法的格子点。
* $<x, y, l>$ 询问的子六边形网格一定完整的位于主网格中。
* $1 \le T \le 15$
* 至多 $1$ 笔测试资料中的 $L > 50$
* 至多 $1$ 笔测试资料中的 $Q > 1000$
输出解释
对于每一笔测试资料,对于每一个询问,请依序各自在一行内输出一个整数,代表此询问的答案。
两笔测试资料间请不要输出多余的空白行。
输入样例
1
3
012
3456
789ab
cdef
ghi
10
1 3 1
1 3 2
1 3 3
9 3 1
7 3 1
3 3 1
3 3 2
5 3 1
5 3 2
2 2 2
输出样例
1
7
19
1
1
1
7
1
7
7
来自杭电HDUOJ的附加信息
Recommend heyang

该题目是Virtual Judge题目,来自 杭电HDUOJ

源链接: HDU-6381

最后修改于 2020-10-25T23:30:51+00:00 由爬虫自动更新

共提交 0

通过率 --%
时间上限 内存上限
2000/1000MS(Java/Others) 131072/131072K(Java/Others)