SP6299 MOVMRBL - Move Marbles

题目描述

你有 $N$ 个弹珠和 $K$ 个槽。需要遵循以下规则: 1. 随时可以向编号为 1 的槽中放入一个弹珠或取出一个弹珠。 2. 只有当编号为 $i-1$ 的槽中有弹珠时,才能对编号为 $i$ 的槽进行放入或取出操作。 3. 当第一个弹珠首次到达编号为 $K$ 的槽时,游戏结束。 你的目标是在最少的有效操作次数内完成游戏。 ### 输入格式 - 输入的第一行为测试用例的数量 $t$。 - 随后的每一行包含两个整数 $N$ 和 $K$,满足 $N \leq 15$ 和 $K \leq 2^N - 1$。 ### 输出格式 对于每个测试用例,输出两整数,分别代表到达第 $K$ 个槽所需的“放入”操作次数和“取出”操作次数,且确保使用的有效操作次数最少。具体细节请参见示例。 ### 示例 **输入:** ``` 1 3 6 ``` **输出:** ``` 6 3 ``` ### 数据范围与提示 - 测试用例数:$1 \leq t \leq 100$ - 弹珠数:$1 \leq N \leq 15$ - 槽位:$1 \leq K \leq 2^N - 1$ **本翻译由 AI 自动生成**

输入格式

输出格式