AT_abc008_4.[ABC008D] 金塊ゲーム

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

高桥君正在玩一个基于无限二维网格的游戏。网格坐标系以 (0,0)(0, 0) 为原点,向东为 xx 轴正方向,向北为 yy 轴正方向。坐标为 (x,y)(x, y) 的格子表示从原点向东移动 xx 格(若 xx 为负则向西移动 −x-x 格),向北移动 yy 格(若 yy 为负则向南移动 −y-y 格)的位置。

网格中存在 W×HW \times H 个金块,分布在所有满足 1≤p≤W1 \leq p \leq W 且 1≤q≤H1 \leq q \leq H 的格子 (p,q)(p, q) 上。其中有恰好 NN 个格子设有金块回收装置(编号 11 至 NN)。装置满足以下条件:

  • 任意两个装置所在的格子 (a,b)(a, b) 和 (c,d)(c, d) 都满足 a≠ca \neq c 且 b≠db \neq d
  • 每个装置所在的格子互不相同

当装置启动时,首先回收所在格子的金块,然后向东南西北四个方向延伸机械臂进行扩展回收。机械臂的延伸需满足以下规则:

  • 东向:选择整数 p>x+1p > x+1,使得区间 (x+1,y)(x+1, y) 到 (p−1,y)(p-1, y) 的格子均有金块,且 (p,y)(p, y) 无金块。回收该区间所有金块。
  • 西向:选择整数 p<x−1p < x-1,使得区间 (p+1,y)(p+1, y) 到 (x−1,y)(x-1, y) 的格子均有金块,且 (p,y)(p, y) 无金块。回收该区间所有金块。
  • 南向:选择整数 q<y−1q < y-1,使得区间 (x,q+1)(x, q+1) 到 (x,y−1)(x, y-1) 的格子均有金块,且 (x,q)(x, q) 无金块。回收该区间所有金块。
  • 北向:选择整数 q>y+1q > y+1,使得区间 (x,y+1)(x, y+1) 到 (x,q−1)(x, q-1) 的格子均有金块,且 (x,q)(x, q) 无金块。回收该区间所有金块。

对于每个方向,若不存在满足条件的 pp 或 qq,则无法在该方向延伸机械臂。此外,若某个方向存在可回收的金块,则必须执行回收操作。下图展示了满足条件的回收示例(图中以 M 表示装置,粗框表示可回收范围)。

高桥君需要决定所有装置的启动顺序,不同的顺序可能导致最终回收数量不同。由于高桥君希望最大化金块回收量,请编写程序计算可能获得的最大金块数量。

输入格式

输入通过标准输入给出:

WW HH
NN
X1X_1 Y1Y_1
X2X_2 Y2Y_2
...
XNX_N YNY_N

  • 第 1 行:两个整数 WW (1≤W≤1061 \leq W \leq 10^6) 和 HH (1≤H≤1061 \leq H \leq 10^6)
  • 第 2 行:整数 NN (1≤N≤301 \leq N \leq 30)
  • 后续 NN 行:每行两个整数 XiX_i (1≤Xi≤W1 \leq X_i \leq W) 和 YiY_i (1≤Yi≤H1 \leq Y_i \leq H),表示第 ii 个装置的位置

保证所有装置的位置满足 Xi≠XjX_i \neq X_j 且 Yi≠YjY_i \neq Y_j(i≠ji \neq j)

输出格式

输出可回收金块的最大数量(末尾换行)

输入输出样例

  • 输入#1

    6 4
    3
    2 4
    3 1
    4 3

    输出#1

    19
  • 输入#2

    3 3
    3
    1 1
    2 3
    3 2

    输出#2

    9
  • 输入#3

    15 10
    8
    7 10
    12 8
    4 4
    5 7
    9 9
    1 6
    6 5
    3 2

    输出#3

    112

说明/提示

部分分

  • 数据集 1 (N≤8N \leq 8, W,H≤80W,H \leq 80):80 分
  • 数据集 2 (W,H≤80W,H \leq 80):合计 99 分
  • 数据集 3 (无限制):合计 100 分

样例解释 1

输入样例 1 的初始状态如下图所示(图片链接保留):

按照 1 号、2 号、3 号装置的顺序启动,可以回收 19 个金块,操作过程如下图所示:

样例解释 2

存在可回收全部金块的启动顺序

翻译由 DeepSeek R1 完成

输入解题思路,AI测评打分。不知道怎么写?

首页