CF1875C.Jellyfish and Green Apple
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
水母有 n 块青苹果,每块青苹果的重量为 1 kg。水母想要将这些青苹果平均分给 m 个人。
水母有一把魔法刀。每次操作时,水母可以选择一块青苹果,将其分成两块更小的青苹果,每块的重量都是原来的一半。
水母想知道,最少需要多少次操作,才能将青苹果分成每个人获得的苹果总重量都相同。如果无法通过有限次操作实现平均分配,请输出 −1。
输入格式
每个测试点包含多组测试数据。第一行包含一个整数 t(1≤t≤2⋅104),表示测试数据组数。
接下来每组测试数据占一行,每行包含两个整数 n 和 m(1≤n,m≤109),分别表示初始青苹果的数量和人数。
输出格式
对于每组测试数据,输出一个整数,表示将所有青苹果平均分给 m 个人所需的最少操作次数。如果无法通过有限次操作实现平均分配,则输出 −1。
输入输出样例
输入#1
4 10 5 1 5 10 4 3 4
输出#1
0 -1 2 5
说明/提示
在第一个测试用例中,不需要分割苹果。每个人可以获得 2 块 1 kg 的苹果,每个人获得的苹果总重量为 2 kg。
在第二个测试用例中,无法通过有限次操作将苹果平均分配。
在第三个测试用例中,可以将两块 1 kg 的苹果分割,得到 4 块 0.5 kg 的苹果。每个人可以获得 1 块 0.5 kg 的苹果和 2 块 1 kg 的苹果。每个人获得的苹果总重量为 2.5 kg。
在第四个测试用例中,首先将所有 3 块 1 kg 的苹果分割,得到 6 块 0.5 kg 的苹果。然后再将其中两块 0.5 kg 的苹果分割,得到 4 块 0.25 kg 的苹果。每个人可以获得 1 块 0.5 kg 的苹果和 1 块 0.25 kg 的苹果。每个人获得的苹果总重量为 0.75 kg。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?