CF1398G.Running Competition

省选/NOI-

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

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

题目描述

A running competition is going to be held soon. The stadium where the competition will be held can be represented by several segments on the coordinate plane:

  • two horizontal segments: one connecting the points (0,0)(0, 0) and (x,0)(x, 0), the other connecting the points (0,y)(0, y) and (x,y)(x, y);
  • n+1n + 1 vertical segments, numbered from 00 to nn. The ii-th segment connects the points (ai,0)(a_i, 0) and (ai,y)(a_i, y); 0=a0<a1<a2<⋯<an−1<an=x0 = a_0 \lt a_1 \lt a_2 \lt \dots \lt a_{n - 1} \lt a_n = x.

For example, here is a picture of the stadium with x=10x = 10, y=5y = 5, n=3n = 3 and a=[0,3,5,10]a = [0, 3, 5, 10]:

A lap is a route that goes along the segments, starts and finishes at the same point, and never intersects itself (the only two points of a lap that coincide are its starting point and ending point). The length of a lap is a total distance travelled around it. For example, the red route in the picture representing the stadium is a lap of length 2424.

The competition will be held in qq stages. The ii-th stage has length lil_i, and the organizers want to choose a lap for each stage such that the length of the lap is a divisor of lil_i. The organizers don't want to choose short laps for the stages, so for each stage, they want to find the maximum possible length of a suitable lap.

Help the organizers to calculate the maximum possible lengths of the laps for the stages! In other words, for every lil_i, find the maximum possible integer LL such that li mod L=0l_i \bmod L = 0, and there exists a lap of length exactly LL.

If it is impossible to choose such a lap then print −1-1.

一场跑步比赛即将举行。比赛场地可由坐标平面上的若干线段表示:

  • 两条水平线段:一条连接点 (0,0)(0, 0) 与 (x,0)(x, 0),另一条连接点 (0,y)(0, y) 与 (x,y)(x, y);
  • n+1n + 1 条垂直线段,编号从 00 到 nn。第 ii 条垂直线段连接点 (ai,0)(a_i, 0) 与 (ai,y)(a_i, y);其中满足 0=a0<a1<a2<⋯<an−1<an=x0 = a_0 \lt a_1 \lt a_2 \lt \dots \lt a_{n - 1} \lt a_n = x。

例如,下图展示了一个 x=10x = 10、y=5y = 5、n=3n = 3 且 a=[0,3,5,10]a = [0, 3, 5, 10] 的场地示意图:

一个“圈”(lap)是一条沿这些线段行进的闭合路径,起点与终点重合,且路径不自交(除起点/终点重合外,其余任意两点均不重合)。一个圈的长度即为其总行程距离。例如,图中用红色标出的路径即为一个长度为 2424 的圈。

比赛共分 qq 个阶段进行。第 ii 个阶段的指定长度为 lil_i,主办方希望为每个阶段选择一个圈,使得该圈的长度能整除 lil_i。主办方不希望为各阶段选择过短的圈,因此对每个阶段,他们希望找出满足条件的圈的最大可能长度。

请帮助主办方计算各阶段所能选择的圈的最大可能长度!换言之,对每个 lil_i,求最大的正整数 LL,使得 li mod L=0l_i \bmod L = 0,且存在一个长度恰好为 LL 的圈。

若不存在满足条件的圈,则输出 −1-1。

输入格式

The first line contains three integers nn, xx and yy (1≤n,x,y≤2⋅1051 \le n, x, y \le 2 \cdot 10^5, n≤xn \le x).

The second line contains n+1n + 1 integers a0a_0, a1a_1, ..., ana_n (0=a0<a1<a2<⋯<an−1<an=x0 = a_0 \lt a_1 \lt a_2 \lt \dots \lt a_{n - 1} \lt a_n = x).

The third line contains one integer qq (1≤q≤2⋅1051 \le q \le 2 \cdot 10^5) — the number of stages.

The fourth line contains qq even integers l1l_1, l2l_2, ..., lql_q (4≤li≤1064 \le l_i \le 10^6) — the lengths of the stages.

第一行包含三个整数 nn、xx 和 yy(1≤n,x,y≤2⋅1051 \le n, x, y \le 2 \cdot 10^5,且 n≤xn \le x)。

第二行包含 n+1n + 1 个整数 a0a_0、a1a_1、...、ana_n(满足 0=a0<a1<a2<⋯<an−1<an=x0 = a_0 \lt a_1 \lt a_2 \lt \dots \lt a_{n - 1} \lt a_n = x)。

第三行包含一个整数 qq(1≤q≤2⋅1051 \le q \le 2 \cdot 10^5)—— 阶段的数量。

第四行包含 qq 个偶数 l1l_1、l2l_2、...、lql_q(4≤li≤1064 \le l_i \le 10^6)—— 各阶段的长度。

输出格式

Print qq numbers. The ii-th number should be equal to the maximum possible length of a suitable lap for the ii-th stage, or −1-1 if it is impossible to choose a lap for that stage.

输出 qq 个数。其中第 ii 个数应等于第 ii 个阶段的合适圈道的最大可能长度;若该阶段无法选择任何圈道,则输出 −1-1。

输入输出样例

  • 输入#1

    3 10 5
    0 3 5 10
    6
    24 30 14 16 18 10

    输出#1

    24 30 14 16 -1 -1

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

首页