Điều hướng chính

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Tìm phần tử lớn nhất

Dễ

  • 100 Điểm
  • 57% Tỉ lệ AC
  • 6 Số AC
  • 256M Bộ nhớ giới hạn
  • 1.0s Giới hạn thời gian

Cho một dãy số \(a_n\) gồm \(n\) số nguyên dương.

Với mỗi giá trị \(x\) cho trước, hãy tìm phần tử có giá trị lớn nhất trong dãy \(a_n\) mà nhỏ hơn hoặc bằng \(x\).

Input

Dữ liệu vào được cung cấp từ bàn phím theo định dạng sau:

  • Dòng đầu tiên chứa một số nguyên dương \(n\) (\(n \le 10^5\)), biểu thị số lượng phần tử trong dãy.
  • Dòng thứ hai chứa \(n\) số nguyên dương phân biệt \(a_i\) (\(a_i \le 10^{18}\)), là các phần tử của dãy. Các số này cách nhau bởi dấu cách.
  • Dòng thứ ba chứa một số nguyên dương \(T\) (\(T \le 10^5\)), biểu thị số lượng truy vấn.
  • \(T\) dòng tiếp theo, mỗi dòng chứa một số nguyên dương \(x\), là giá trị ngưỡng.

Output

Đối với mỗi truy vấn \(x\), in ra trên một dòng riêng biệt:

  • Giá trị của phần tử lớn nhất trong dãy \(a_n\) mà nhỏ hơn hoặc bằng \(x\).
  • Nếu không có phần tử nào trong dãy \(a_n\) thỏa mãn điều kiện (tức là tất cả các phần tử đều lớn hơn \(x\)), in ra \(-1\).

Example

Test 1

Input
10
1 11 3 4 7 6 5 8 9 10
2
2
12
Output
1
11

Bình luận

Chưa có bình luận nào.