AT_past20_n.パワーアップ
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一个 109×109 的网格。用 (i,j) 表示第 i 行(自上而下)第 j 列(自左向右)的格子。
英雄初始位于 (1,1)。他可以向上、下、左、右四个相邻格子移动之一。当他到达 (A,B) 这个格子后,英雄会“能力提升”,此后可以向八个相邻格子中的任意一个移动。
- (i,j) 的八个相邻格子为 (i−1,j−1),(i−1,j),(i−1,j+1),(i,j−1),(i,j+1),(i+1,j−1),(i+1,j),(i+1,j+1)(只包括实际存在的格子)。
此外,网格上有 N 枚硬币。第 i 枚硬币位于 (Ci,Di)。当英雄到达该格子时可以收集一枚硬币。
他想收集所有硬币。请问至少需要多少步才能收集完所有硬币?
输入格式
输入从标准输入读取,格式如下:
N A B C1 D1 C2 D2 ⋯ CN DN
输出格式
输出答案。
输入输出样例
输入#1
3 5 2 4 1 1 7 6 3
输出#1
11
输入#2
3 500000000 500000000 1 1000000000 1000000000 1 1000000000 1000000000
输出#2
2999999997
输入#3
8 36 49 73 52 38 86 30 52 85 48 27 60 45 40 65 98 71 37
输出#3
228
说明/提示
样例解释 1
英雄可以通过下述 11 步收集所有硬币。
- 英雄初始在 (1,1)。
- 他用三步到达 (4,1) 并收集一枚硬币。
- 再用两步移动到 (5,2) 并获得能力提升。
- 用一步到达 (6,3) 收集一枚硬币。
- 再用五步到达 (1,7) 收集最后一枚硬币。
因为在 10 步或更少的步数内无法收集所有硬币,所以答案是 11。
数据范围
- 1≤N≤16
- 1≤A,B,Ci,Di≤109
- (1,1),(A,B),(C1,D1),…,(CN,DN) 两两不同。
- 所有输入均为整数。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?