Điểm:
200 (p)
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Cho một dãy số nguyên dương \(a_1,a_2,...,a_n\) gồm \(n\) phần tử. Bạn sẽ phải trả lời \(q\) truy vấn, mỗi truy vấn trả lời số trung vị của đoạn \([A_L;A_R]\) \((1 \le L \le R \le n)\).
Định nghĩa: Số trung vị của 1 dãy số là số nằm ở vị trí thứ \(\frac{n}{2} + 1\) sau khi sắp xếp dãy đó tăng dần (với \(n\) lẻ) hoặc ở vị trí thứ \(\frac{n}{2}\) (nếu \(n\) chẵn).
Input
- Dòng đầu chứa số nguyên dương \(n\) không quá \(10^5\).
- Dòng thứ hai chứa \(n\) số nguyên dương \(a_1,a_2,...,a_n\) \((a_i \le 10^5)\)
- Dòng thứ ba chứa số nguyên dương \(q\) không quá \(1000\) - số truy vấn cần trả lời.
- \(q\) dòng tiếp theo, mỗi dòng chứa 2 số nguyên dương \(L, R\) \((1 \le L \le R \le n)\)
Output
- Ứng với mỗi truy vấn, in ra kết quả thỏa mãn đề bài.
Example
Test 1
Input
6
7 9 1 7 8 2
3
1 3
3 6
1 1
Output
7
2
7
Bình luận
brute-force go brrrrrrrrrrrrrrrrrr
7 bình luận nữa