CF2042C.Competitive Fishing
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Alice 和 Bob 参加了一个钓鱼比赛,他们一共钓到了 n 条鱼,鱼的大小从 1 到 n 升序排序。
两人的总分计算如下:首先,选择一个整数 m,所有鱼都被依次分到 m 个非空连续区间,一条鱼只能被分到一个区间,并且区间从小到大排列。比如:第二个区间的鱼必须全部大于第一个区间的鱼。
接着,每条鱼都按照区间编号被分配了分数,第 1 个区间的鱼分数全部为 0,第 2 个区间鱼的分数全部为 1……第 i 个区间鱼的分数全部为 (i−1)。
两人的分数即为他们各自钓到鱼的分数之和。
你想要让 Bob 的分数比 Alice 高至少 k 分。求划分的区间个数 m 的最小值。
输入格式
第一行,一个整数 t (1≤t≤104),表示数据组数。
对于每组数据:
第一行,两个整数 n,k (1≤n≤2×105;1≤k≤109)。
第二行,一个长度为 n 的 0-1 字符串,第 i 个位置为 0,代表第 i 条鱼属于 Alice。第 i 个位置为 1,代表第 i 条鱼属于 Bob。
输出格式
对于每组数据,输出一行,一个整数,表示将鱼分成组数的最小值。如果无解,输出 -1。
翻译:HYdroKomide
输入输出样例
输入#1
7 4 1 1001 4 1 1010 4 1 0110 4 2 0110 6 3 001110 10 20 1111111111 5 11 11111
输出#1
2 -1 2 -1 3 4 -1
说明/提示
null
输入解题思路,AI测评打分。不知道怎么写?