AT_arc142_c.[ARC142C] Tree Queries

普及+/提高

通过率:0%

AC君温馨提醒

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

题目描述

有一棵包含 NN 个顶点的树,每个顶点编号为 1,…,N1,\ldots,N。
对于每一对整数 u,v  (1≤u,v≤N)u,v\,\ (1\leq u,v\leq N),定义顶点 uu 和顶点 vv 之间的距离 du,vd_{u,v} 为:

  • 在连接顶点 uu 和顶点 vv 的最短路径上包含的边的数量。

你可以进行 00 次以上、2N2N 次以下的如下询问:

  • 指定满足 1≤u,v≤N1\leq u,v\leq N 且 u+v>3u+v>3 的整数 u,vu,v,询问顶点 uu 和顶点 vv 的距离 du,vd_{u,v}。

请你求出顶点 11 和顶点 22 之间的距离 d1,2d_{1,2}。

输入格式

本题为交互题(你的程序需要与评测程序通过输入输出进行交互)。

首先,你的程序会从标准输入读入一个正整数 NN。

NN

之后,你可以进行询问。
每次询问请按如下格式输出到标准输出(末尾需换行):

? uu vv

如果询问合法,你会从标准输入读入该询问的答案 du,vd_{u,v}。

du,vd_{u,v}

如果你的询问格式错误、询问次数超限等导致询问被判为不合法,你会收到 −1-1 作为回应。

-1

此时,评测程序会立即终止,判定你的提交为不正确。你的程序也应立即终止。

当你确定 d1,2d_{1,2} 的值后,请按如下格式输出答案(末尾需换行):

! d1,2d_{1,2}

输出格式

见上文交互格式说明。

说明/提示

限制

  • 3≤N≤1003\leq N\leq 100
  • NN 是整数
  • 树在交互开始前已确定

注意事项

  • 每次输出后请务必刷新标准输出,否则可能会因超时(TLE)被判为不正确。
  • 输出答案后(或收到 −1-1 后)请立即正常退出程序,否则评测结果不确定。
  • 输出格式不正确时,评测结果不确定。
  • 特别注意,不要输出多余的换行,否则会被判为格式错误。

输入输出样例

以下为当树结构如图所示时的交互样例:

输入 输出 说明
3 首先给出整数 NN。
? 1 3 第一次询问,询问顶点 1,31,3 的距离。
1 返回顶点 1,31,3 的距离。
? 2 2 第二次询问,询问顶点 2,22,2 的距离。
0 返回顶点 2,22,2 的距离。
? 2 3 第三次询问,询问顶点 2,32,3 的距离。
1 返回顶点 2,32,3 的距离。
? 3 1 第四次询问,询问顶点 3,13,1 的距离。
1 返回顶点 3,13,1 的距离。
? 3 2 第五次询问,询问顶点 3,23,2 的距离。
1 返回顶点 3,23,2 的距离。
? 2 2 第六次询问,询问顶点 2,22,2 的距离。
0 返回顶点 2,22,2 的距离。
! 2 输出顶点 1,21,2 的距离并结束。实际树中顶点 1,21,2 的距离为 22,因此本次提交可以通过。

由 ChatGPT 4.1 翻译

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

首页