CF2065E.Skibidus and Rizz
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
情人节将至,Skibidus 拼命需要一种方法来吸引他的暗恋对象!幸运的是,他找到了正解:制造完美的二进制字符串!
给定一个二进制字符串$^{\text{∗}} $ t,令 x 表示 t 中 0 的个数,y 表示 t 中 1 的个数。我们定义字符串的平衡值为 max(x−y,y−x)。
Skibidus 给你三个整数 n,m 和 k。他希望你构造一个长度为 n+m 的二进制字符串 s,其中恰好包含 n 个 0 和 m 个 1,并且要求其所有子串$^{\text{†}} $的平衡值的最大值恰好为 k。如果不存在满足条件的字符串,请输出 -1。
$ ^{\text{∗}} $ 二进制字符串指仅由字符 0 和 1 组成的字符串。
$ ^{\text{†}} $ 字符串 a 是字符串 b 的子串,意味着 a 可以通过删除 b 开头和结尾的若干(可能为 0 或全部)字符得到。
输入格式
第一行包含一个整数 t (1≤t≤104),表示测试用例的数量。
每个测试用例的唯一一行包含三个整数 n,m 和 k (0≤n,m≤2⋅105,1≤k≤n+m,n+m≥1)。
保证所有测试用例中,n 的总和和 m 的总和均不超过 2⋅105。
输出格式
对于每个测试用例,如果可以构造满足条件的 s,输出任意一个满足条件的字符串;否则,输出 -1。
输入输出样例
输入#1
6 1 2 1 4 3 2 2 4 3 8 3 2 5 0 4 5 0 5
输出#1
101 0100101 011011 -1 -1 00000
说明/提示
在第一个测试用例中,我们必须构造一个字符串 s,包含 1 个 0 和 2 个 1,且所有子串中的最大平衡值为 1。一个可能的满足条件的字符串是 101,原因如下:
- 考虑由索引 [1,1] 界定的子串:平衡值为 max(0−1,1−0)=1。
- 考虑由索引 [1,2] 界定的子串:平衡值为 max(1−1,1−1)=0。
- 考虑由索引 [1,3] 界定的子串:平衡值为 max(1−2,2−1)=1。
- 考虑由索引 [2,2] 界定的子串:平衡值为 max(1−0,0−1)=1。
- 考虑由索引 [2,3] 界定的子串:平衡值为 max(1−1,1−1)=0。
- 考虑由索引 [3,3] 界定的子串:平衡值为 max(0−1,1−0)=1。
在所有可能的子串中,最大的平衡值为 1。
在第二个测试用例中,具有最大平衡值的子串为 0100,其平衡值为 max(3−1,1−3)=2。
输入解题思路,AI测评打分。不知道怎么写?