CF2042C.Competitive Fishing

普及+/提高

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Alice 和 Bob 参加了一个钓鱼比赛,他们一共钓到了 nn 条鱼,鱼的大小从 11 到 nn 升序排序。

两人的总分计算如下:首先,选择一个整数 mm,所有鱼都被依次分到 mm 个非空连续区间,一条鱼只能被分到一个区间,并且区间从小到大排列。比如:第二个区间的鱼必须全部大于第一个区间的鱼。

接着,每条鱼都按照区间编号被分配了分数,第 11 个区间的鱼分数全部为 00,第 22 个区间鱼的分数全部为 11……第 ii 个区间鱼的分数全部为 (i−1)(i-1)。

两人的分数即为他们各自钓到鱼的分数之和。

你想要让 Bob 的分数比 Alice 高至少 kk 分。求划分的区间个数 mm 的最小值。

输入格式

第一行,一个整数 tt (1≤t≤1041\le t \le 10^4),表示数据组数。

对于每组数据:

第一行,两个整数 n,kn,k (1≤n≤2×1051\le n\le 2\times 10^5;1≤k≤1091\le k\le 10^9)。

第二行,一个长度为 nn 的 0-1 字符串,第 ii 个位置为 00,代表第 ii 条鱼属于 Alice。第 ii 个位置为 11,代表第 ii 条鱼属于 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测评打分。不知道怎么写?

首页