교육 Codeforces 라운드 76 (사업부 정격. 2) A. 두 라이벌 학생

당신은 학교에서 체육 교사이다.

있습니다  N 행의 N 학생. 그리고 그들 가운데 두 경쟁하면서도 학생들이있다. 첫 번째 위치에  A, 위치에서 제  B의 B. 포지션은 번호가  1N N 왼쪽에서 오른쪽.

그들은 라이벌이기 때문에, 당신은 그들 사이의 거리를 극대화하고자합니다. 학생들이 포지션에있는 경우  P는 P와  S 의 각각 다음 그들 사이의 거리입니다  | P - S | | P-의 |.

당신은 대부분의에서 다음 작업을 할 수있는  X X 번 : 두 개의 선택  인접한 (이웃) 학생들과 그들을 교환합니다.

최대 후 2 명 경쟁하면서도 학생들 사이의 최대 거리를 계산  X X 스왑.

입력

첫 번째 라인은 하나의 정수 포함  t를 t ( 1 t 100 테스트 케이스의 수 - 1≤t≤100 참조).

각 테스트 케이스의 라인 만이 포함 된 네 개의 정수  N , N,  X , X,  A와  B , B ( 2 N 100 2≤n≤100,  0 X 100 0≤x≤100,  1 , B를 N 1≤a, b≤n,  B ≠ 나) - 행의 학생 수가 각각 당신이 할 수있는 스왑, 제 1 및 제 2 경쟁하면서도 학생들의 위치의 수.

산출

당신이 얻을 수있는 두 개의 필적하는 학생들 사이의 최대 거리 - 각 테스트 케이스에 인쇄 한 정수하십시오.

입력
(3) 
5 1 3 2 
100 100 33 1 
6 0 2 3
산출
(2) 
99 
(1)
노트

첫 번째 테스트 케이스에서 당신은 위치에 학생들을 교환 할 수  34 4 그리고 경쟁자 사이의 거리가 동일  | 4 - 2 | = 2 | 4-2 | = 2.

두 번째 테스트 케이스에서는 스왑 학생이 없습니다.

세 번째 테스트 케이스에서는 학생들을 바꿀 수 없습니다.

 

 

#INCLUDE <비트 / stdc ++ H.>
 사용  스페이스 성병;
INT N, X, A, B;
값 int ) (주 {
     INT t 단계; 
    CIN >> t;
    반면 (t-- ) { 
        CIN >> >> N X 사항 >> >> B;
        경우 ((ABS (AB) + X)> (N- 1 )), N- COUT << 1 << ENDL;
        다른 COUT << (ABS (AB) + X) << ENDL; 
    } 
    반환  0 ; 
}

 

 

추천

출처www.cnblogs.com/QingyuYYYYY/p/11863739.html