CF1257A.Two Rival Students

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are the gym teacher in the school.

There are nn students in the row. And there are two rivalling students among them. The first one is in position aa , the second in position bb . Positions are numbered from 11 to nn from left to right.

Since they are rivals, you want to maximize the distance between them. If students are in positions pp and ss respectively, then distance between them is ps|p - s| .

You can do the following operation at most xx times: choose two adjacent (neighbouring) students and swap them.

Calculate the maximum distance between two rivalling students after at most xx swaps.

输入格式

The first line contains one integer tt ( 1t1001 \le t \le 100 ) — the number of test cases.

The only line of each test case contains four integers nn , xx , aa and bb ( 2n1002 \le n \le 100 , 0x1000 \le x \le 100 , 1a,bn1 \le a, b \le n , aba \neq b ) — the number of students in the row, the number of swaps which you can do, and positions of first and second rivaling students respectively.

输出格式

For each test case print one integer — the maximum distance between two rivaling students which you can obtain.

输入输出样例

  • 输入#1

    3
    5 1 3 2
    100 33 100 1
    6 0 2 3
    

    输出#1

    2
    99
    1
    

说明/提示

In the first test case you can swap students in positions 33 and 44 . And then the distance between the rivals is equal to 42=2|4 - 2| = 2 .

In the second test case you don't have to swap students.

In the third test case you can't swap students.

首页