A16838 | New Year Cake
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Monocarp 打算制作一个新年蛋糕。
这个蛋糕必须至少包含一层。蛋糕顶层的尺寸必须为 $1$;下方一层的尺寸必须为 $2$;再下一层的尺寸必须为 $4$,以此类推(除顶层外,每一层的尺寸都是其上一层的两倍)。
此外,每一层都必须用白巧克力或黑巧克力覆盖。覆盖尺寸为 $k$ 的一层需要 $k$ 千克巧克力。每一层只能用一种巧克力,并且类型必须交替(如果某一层用黑巧克力,那么紧接上下的两层必须用白巧克力,反之亦然)。
Monocarp 有 $a$ 千克白巧克力和 $b$ 千克黑巧克力。他想知道,在保证巧克力用量充足的情况下,这个蛋糕最多能有多少层。
这个蛋糕必须至少包含一层。蛋糕顶层的尺寸必须为 $1$;下方一层的尺寸必须为 $2$;再下一层的尺寸必须为 $4$,以此类推(除顶层外,每一层的尺寸都是其上一层的两倍)。
此外,每一层都必须用白巧克力或黑巧克力覆盖。覆盖尺寸为 $k$ 的一层需要 $k$ 千克巧克力。每一层只能用一种巧克力,并且类型必须交替(如果某一层用黑巧克力,那么紧接上下的两层必须用白巧克力,反之亦然)。
Monocarp 有 $a$ 千克白巧克力和 $b$ 千克黑巧克力。他想知道,在保证巧克力用量充足的情况下,这个蛋糕最多能有多少层。
输入格式
第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。
每个测试用例包含一行,包括两个整数 $a$ 和 $b$($1 \le a, b \le 10^6$)。
每个测试用例包含一行,包括两个整数 $a$ 和 $b$($1 \le a, b \le 10^6$)。
输出格式
对于每个测试用例,输出一个整数,表示蛋糕能有的最大层数。
输入输出样例
输入 #1
7 1 1 1 2 3 1 4 3 5 2 1000000 1000000 1000000 1
输出 #1
1 2 2 2 3 20 2
在第一个样例中,Monocarp 可以制作一个有一层、尺寸为 $1$ 的蛋糕,并用任意一种巧克力覆盖。
在第二个样例中,Monocarp 可以制作一个两层的蛋糕:顶层尺寸为 $1$,用白巧克力覆盖,下方一层尺寸为 $2$,用黑巧克力覆盖。
在第三个样例中,Monocarp 可以制作一个两层的蛋糕:顶层尺寸为 $1$,用黑巧克力覆盖,下方一层尺寸为 $2$,用白巧克力覆盖。
在第四个样例中,Monocarp 可以制作一个两层的蛋糕:顶层尺寸为 $1$,用黑巧克力覆盖,下方一层尺寸为 $2$,用白巧克力覆盖。注意,制作一个三层的蛋糕,其中顶层尺寸为 $1$ 和下方一层尺寸为 $2$ 都使用黑巧克力,最底层尺寸为 $4$ 用白巧克力,是不合法的,因为相邻层巧克力种类必须交替。
在第二个样例中,Monocarp 可以制作一个两层的蛋糕:顶层尺寸为 $1$,用白巧克力覆盖,下方一层尺寸为 $2$,用黑巧克力覆盖。
在第三个样例中,Monocarp 可以制作一个两层的蛋糕:顶层尺寸为 $1$,用黑巧克力覆盖,下方一层尺寸为 $2$,用白巧克力覆盖。
在第四个样例中,Monocarp 可以制作一个两层的蛋糕:顶层尺寸为 $1$,用黑巧克力覆盖,下方一层尺寸为 $2$,用白巧克力覆盖。注意,制作一个三层的蛋糕,其中顶层尺寸为 $1$ 和下方一层尺寸为 $2$ 都使用黑巧克力,最底层尺寸为 $4$ 用白巧克力,是不合法的,因为相邻层巧克力种类必须交替。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?