【样例 #1】
::::info[样例 #1 解释]
对于第一组测试数据,计算机生成的方格图为 LXXR。由于中间两个障碍物的阻挡,Bob 无法从方格 向右移动到方格 ,故 Alice 和 Bob 不可能获胜,输出 -1;
对于第二组测试数据,计算机生成的方格图为 LLRR。显然,Bob 可以直接从方格 向右移动到方格 ,最终得到的 就是一个合法括号串。因此,Alice 无需花费任何金币进行反转操作即可获胜,输出 0;
对于第三组测试数据,Alice 只需花费 枚金币对第三列使用一次反转操作。在这之后,方格图的状态变为:
Bob 只需按照橙色方格对应的路径行动,最终可以得到 ,这是一个合法括号串。
容易证明,要让他们获胜最少需要 枚金币,故输出 1。
::::
【样例 #2】
::::info[样例 #2 解释]
:::success[第一组测试数据]
对于第一组测试数据,Alice 可以分别对第二行和第三列使用反转操作。在这之后,方格图的状态变为:
- 值得注意的一点是,对于方格 ,由于它总共经历了两次反转,所以仍然维持最开始的状态 。
Bob 只需按照橙色方格对应的路径行动,最终可以得到 ,这是一个合法括号串。
Alice 总共需要花费 枚金币,可以证明为最小花费。
:::
:::success[第二组测试数据]
对于第二组测试数据,Alice 可以对第四行使用反转操作。在这之后,方格图的状态变为:
Bob 只需按照橙色方格对应的路径行动,最终可以得到 ,这是一个合法括号串。
Alice 总共需要花费 枚金币,可以证明为最小花费。
:::
:::success[第三组测试数据]
对于第三组测试数据,Alice 可以分别对第一行、第二行使用反转操作。在这之后,方格图的状态变为:
Bob 只需按照橙色方格对应的路径行动,最终可以得到 ,这是一个合法括号串。
Alice 总共需要花费 枚金币,可以证明为最小花费。
:::
:::success[第四组测试数据]
对于第四组测试数据,Alice 可以分别对第一行、第六行、第七行、第二列使用反转操作。在这之后,方格图的状态变为:
Bob 只需按照橙色方格对应的路径行动,最终可以得到 ,这是一个合法括号串。(注:括号串的颜色仅为方便观察,与答案无关)
Alice 总共需要花费 枚金币,可以证明为最小花费。
:::
::::
【样例 #3】
见附件中的 brackets/brackets3.in 与 brackets/brackets3.ans。
这个样例满足测试点 的限制。
【样例 #4】
见附件中的 brackets/brackets4.in 与 brackets/brackets4.ans。
这个样例满足测试点 的限制。
【样例 #5】
见附件中的 brackets/brackets5.in 与 brackets/brackets5.ans。
这个样例满足测试点 的限制。
【数据范围】
对于所有测试点,保证 ,( 为奇数),,并且方格图中初始填入的字符仅含 L,R,X,其中左上角和右下角的字符一定不为 X。
::cute-table{tuack}
特殊性质 A:保证 。
- 分值分配:每个测试点的分值为 分。
- 为避免对算法复杂度常系数的考察,本题的时间限制被设为 1.5s。