n, s, t, k = gets.split.map(&:to_i) a = gets.split.map(&:to_i) s -= 1 t -= 1 if a[s] + a[t] <= k then puts 1 else # a[s] -> min(A) -> a[t] mn = 2_000_000_000 (0..n - 1).each do |i| if i == s or i == t then next end if mn > a[i] then mn = a[i] end end if a[s] + mn <= k and mn + a[t] <= k then puts 2 else puts -1 end end