CF2157C.Meximum Array 2
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定三个正整数 n、k 和 q。你还会得到 q 个三元组 (c,l,r),其中 1≤c≤2,1≤l≤r≤n。
如果存在一个数组 a1,a2,…,an 满足 0≤ai≤109 对于每个 i∈[1,n],并且对于每个给定的三元组 (c,l,r),都有以下条件成立:
- 如果 c=1,则 min(al,al+1,…,ar)=k;
- 如果 c=2,则 MEX∗(al,al+1,…,ar)=k。
注意,所有约束中的参数 k 都是相同的。
找到一个“meximum”数组 a1,a2,…,an,长度为 n。输入保证总存在一个合法的数组。如果有多种满足条件的数组,你可以输出其中任意一种。
∗ 最小未出现数(MEX),指对一组整数 a1,a2,…,ak,它们的 MEX 定义为没有出现在该集合中的最小非负整数 x。
输入格式
每组测试包含若干组测试用例。第一行包含测试用例数量 t,1≤t≤500。每组测试用例的描述如下。
每组测试用例的第一行包含三个整数 n、k、q,1≤k≤n≤100,1≤q≤100——表示数组的长度 a1,a2,…,an,min 和 MEX 约束的目标值 k,以及约束的数量 q。
接下来 q 行,每行包含一个三元组 (c,l,r),对数组 al,al+1,...,ar 加以约束。含义如上所述。
保证输入对应的每组情况下都至少存在一个合法数组。
注意,不存在 n、k 或 q 在所有测试用例的总和上的其他限制。
输出格式
对于每组测试用例,输出一行,包含一个合法的“meximum”数组 a1,a2,…,an。
输入输出样例
输入#1
4 6 2 2 1 1 3 2 2 6 3 3 1 2 1 3 3 3 2 1 1 1 1 3 3 3 2 2 2 1 2 2 2 3
输出#1
2 5 4 3 0 1 2 0 1 3 3 3 1 0 1
说明/提示
在第一个测试用例中,需要构造一个 n=6,k=2,有 q=2 个约束的 meximum 数组。
- 三元组 (1,1,3):要求 min(a1,a2,a3)=2;
- 三元组 (2,2,6):要求 MEX(a2,a3,a4,a5,a6)=2。
一个满足所有条件的数组,例如 [2,5,4,3,0,1]。
在第二个测试用例中,需要构造一个 n=3,k=3,有一个约束的 meximum 数组。
- 三元组 (2,1,3):要求 MEX(a1,a2,a3)=3。
一个合法的数组是 [2,0,1]。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?