
maxRivalDistance
Việt là một giáo viên dạy thể chất của trường. Trong một cuộc đua nọ do Việt tổ chức, có n
học sinh tham gia, trong đó có hai học sinh là kì phùng địch thủ. Một đứng ở vị trí a
, người còn lại ở vị trí b
. Các vị trí được đánh số từ 1
đến n
.
Do hai học sinh này là địch thủ, nên Việt muốn gia tăng khoảng cách tối đa giữa họ (khoảng cách giữa hai vị trí). Công việc này được thực hiện bằng cách chọn hai học sinh bất kì đứng kế nhau và đổi vị trí của họ. Việc đổi vị trí này chỉ được thực hiện tối đa x
lần.
Hãy giúp Việt tìm ra khoảng cách vị trí lớn nhất của hai kì phùng địch thủ sau tối đa x
lần hoán đổi.
Ví dụ:
- Với
students={5,1,3,2}
(n=5, x=1, a=3, b=2
) thìmaxRivalDistance(students)=2
. Vì lúc này ta đổi chổ hai học sinh ở vị trí2
và1
. Khi đó, khoảng cách giữa hai kì phùng địch thủ lúc này là3-1=2
.
Đầu vào/Đầu ra:
- [Giới hạn thời gian chạy] 0.5 giây với C++, 3 giây với Java và C#, 4 giây với Python, GO và Js.
- [Đầu vào] array.integer students.
students[0]
chứa số lượng học sinhn
. (2<=n<=1000
)students[1]
chứax
. (0<=x<=1000
)students[2]
vàstudents[3]
chứa vị trí của hai kì phùng địch thủa
vàb
. (1<=a,b<=n
vàa!=b
)
- [Đầu ra] integer: Khoảng cách tối đa giữa hai kì phùng địch thủ.
Post Comment