logo AlgoBeat OnlineJudge
登录 注册

#215511. [KTSC 2026] 绝妙区间 2 / Wonderful Interval 2

内存限制:1024 MiB 时间限制:4000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

英宇有两个长度为 的数组 。对于任意 ,有

一个区间 绝妙区间,当且仅当其满足以下所有条件:

  • 为整数;
  • 通过重复以下操作,可以将 变换为
    • 令此时的数组为
    • 选择两个不同的整数 )满足 ,然后令

英宇好奇哪些区间是绝妙区间。具体地,英宇给定了 个询问,编号 ,这些询问用两个长度为 的数组 来表示。

询问 )表示,查询区间 是否是绝妙区间。

写一个程序回答英宇的询问。

实现细节

这是一道函数式交互题。你不必,也不应实现 main 函数。

你应当实现以下的函数:

vector<int> array_operation(vector<int> A, vector<int> B, vector<int> L, vector<int> R)
  • :大小为 的整数数组。
  • :大小为 的整数数组。
  • 返回一个大小为 的整数数组 。若 是绝妙区间, 应为 ,否则为 )。
  • 该函数被调用恰好一次。

你的源代码中不应调用任何输入/输出函数。

输入格式

示例评测程序的输入格式如下:

  • 行:
  • 对于所有
    • 行:
  • 对于所有
    • 行:

输出格式

示例评测程序按以下格式打印答案:

  • 行:array_operation 的返回值

样例

样例输入 1

4 3
2 2
1 1
1 3
2 3
0 1
0 3
1 3

样例输出 1

1 1 0

样例输入 2

5 5
1 2
2 3
1 1
2 4
1 2
0 2
0 4
1 3
1 4
2 3

样例输出 2

1 1 0 1 0

数据范围与提示

数据范围

  • );
  • );

子任务

编号 得分 限制
无额外限制

样例

样例 1

考虑以下调用: array_operation([2, 1, 1, 2], [2, 1, 3, 3], [0, 0, 1], [1, 3, 3])

  • [, ] 是一个绝妙区间。这是因为两个数组 , , 是相等的。
  • [, ] 是一个绝妙区间。这是因为可以通过执行以下操作,使 [, , , ] 变为 [, , , ]。
    • 选择 并执行操作。操作后数组变为 [, , , ]。
    • 选择 并执行操作。操作后数组变为 [, , , ]。
    • 选择 并执行操作。操作后数组变为 [, , , ]。
  • [, ] 不是一个绝妙区间。可以证明,无论如何执行操作,都无法使 [, , ] 变为 [, , ]。

因此,函数应返回 [, , ]。

样例 2

考虑以下调用: array_operation([1, 2, 1, 2, 1], [2, 3, 1, 4, 2], [0, 0, 1, 1, 2], [2, 4, 3, 4, 3])

在所有区间中,绝妙区间为 [, ], [, ], [, ], [, ], [, ]。因此,函数应返回 [, , , , ]。