CF1599B Restaurant Game

题目描述

Alice 和 Bob 总是很难决定晚餐去哪家餐厅。以前他们会玩 Eenie Meenie Miney Mo 游戏,但随着他们的餐厅列表变长,他们不得不发明了一个新游戏。这个新游戏的规则是:他们把餐厅的名字写在 $N$ 张卡片上,并将这些卡片排成一行。在游戏开始前,他们各自选择一个起始卡片和一个起始移动方向。两人轮流行动,每次轮到某人时,他会按照当前方向移动到相邻的卡片。如果到达卡片行的末端或开头,则改变移动方向。当两人相遇在同一张卡片时,这张卡片会被标记为移除,并在两人都离开该卡片的第一时刻被移除。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1599B/6c640cc608bf157b205c020e47ff44f6f8443491.png) 卡片被移除的示例 他们会重复这个过程,直到只剩下一张餐厅卡片。由于卡片数量太多,他们已经厌倦了反复模拟这个过程,因此需要你的帮助来确定最后剩下的那张卡片。你能帮他们吗?

输入格式

输入的第一行为一个整数 $T$($1 \leq T \leq 10^{4}$),表示测试用例的数量。每个测试用例包含三行: 第一行包含一个整数 $N$,表示初始卡片数量。 第二行包含两个整数 $A, B$($0 \leq A, B < N$,$2 \leq N \leq 10^{18}$),表示两人各自选择的起始卡片的下标(从 $0$ 开始计数)。 第三行包含两个字符串 $D_A, D_B$,$D_A, D_B \in \{\text{"left"}, \text{"right"}\}$,表示两人各自的起始移动方向。

输出格式

输出共 $T$ 行,每行一个整数,表示每个测试用例中最后剩下的卡片的下标(从 $0$ 开始计数)。

说明/提示

注意,即使 Alice 一开始选择了最左边的卡片且初始方向为 left,她在下一步也会向右移动。 由 ChatGPT 4.1 翻译