#P12557. [UOI 2024] Football

[UOI 2024] Football

题目描述

一支足球队有 nn 名球员,编号为 11 到 nn 的整数。编号为 ii 的球员的技能水平用整数 cic_i 描述。

球员们围成一个圆圈排列,编号为 ii 的球员右侧是编号为 i+1i+1 的球员(对于 1≤i<n1 \le i < n),而编号为 nn 的球员的下一个球员是编号为 11 的球员。

我们定义一个游戏组合的强度,该组合由一个整数数组 k=[k0,k1,k2,…,km−1]k=[k_0, k_1, k_2, \ldots, k_{m-1}] 描述,具体如下:

  • 初始时,球在编号为 11 的球员手中;
  • 球员们无限轮流传球:在进行第 ii 次传球时,当前持球的球员会将球传给圆圈中右侧第 xx 个位置的球员,其中 x=k((i−1)mod  m)x=k_{((i-1) \mod m)};
  • 游戏组合的强度定义为在上述过程中某个时刻持球的所有球员技能水平的最小值。

给定一个整数数组 a0,a1,…,aq−1a_0, a_1, \ldots, a_{q-1}。对于每个 ii 从 00 到 (q−1)(q-1),求出由数组 [a0,a1,…,ai][a_0, a_1, \ldots, a_i] 描述的游戏组合的强度。

输入格式

第一行包含两个整数 nn 和 qq (1≤n,q≤3⋅105)(1 \leq n, q \leq 3 \cdot {10}^5) —— 球员数量和数组 aa 的长度。

第二行包含 nn 个整数 c1,c2,…,cnc_1, c_2, \dots, c_n (1≤ci≤n)(1 \leq c_i \leq n) —— 球员的技能水平。

第三行包含 qq 个整数 a0,a1,…,aq−1a_0, a_1, \dots, a_{q-1} (1≤ai≤n−1)(1 \leq a_i \leq n-1) —— 数组 aa 的元素。

输出格式

输出 qq 个整数 —— 所求的游戏组合的强度值。

6 3
6 3 5 4 2 1
3 1 2
4 1 2

提示

在示例中,游戏组合的传球过程如下:

k=[3]k=[3]

k=[3,1]k=[3,1]

k=[3,1,2]k=[3,1,2]

评分标准

  • (1010 分):n,q≤100n, q \leq 100;
  • (44 分):所有 aia_i 的值相同;
  • (1111 分):nn 是一个质数;
  • (1212 分):n,q≤1000n, q \leq 1000;
  • (1616 分):n,q≤1.5⋅105n, q \leq 1.5 \cdot {10}^5,且 n=2kn = 2^k(其中 kk 为某个整数);
  • (2525 分):n,q≤105n, q \leq {10}^5;
  • (2222 分):无额外约束。

翻译由 DeepSeek V3 完成