Nhân dịp năm mới, để thu hút khách hàng đến mua sắm, siêu thị Hùng Vương tổ chức chương trình khách hàng may mắn: mỗi khách hàng đến siêu thị đều nhận được một số may mắn, khách hàng thứ \(i\) nhận số may mắn là số nguyên \(a_{i}\) được tạo tự động bằng máy tính. Kết thúc chương trình có \(n\) khách hàng nhận được số may mắn. Ban tổ chức tiến hành quay số trúng thưởng, những khách hàng may mắn sẽ nhận được phần thưởng của siêu thị. Để đảm bảo tính khách quan Ban tổ chức nhờ một khách hàng bắt thăm ngẫu nhiên hai số nguyên \(x,\ y\ (1 \leq x,\ y \leq n)\) sau đó sử dụng một chương trình máy tính để tìm ra hai số \(u,\ v\) \((0 < u \leq v \leq 10^{6})\) thỏa các điều kiện sau:
- Số lượng người có số may mắn \(a_{i}\) thỏa mãn \(u \leq a_{i} \leq v\) tối thiểu là \(x\).
- Số lượng người có số may mắn \(a_{j}\) thỏa mãn \(u \leq {- a}_{j} \leq v\) tối thiểu là \(y\).
- Hiệu \(v\ –\ u\) là nhỏ nhất.
Sau khi tìm được hai số \(u,v\) thỏa mãn các điều kiện trên khách hàng có số may mắn \(a_{i}\) thỏa mãn \(u \leq \left| a_{i} \right| \leq v\) sẽ được nhận phần thưởng của siêu thị.
Yêu cầu: hãy giúp Ban tổ chức tìm hai số \(u,v\) thỏa mãn các điều kiện trên.
Dữ liệu vào: nhập từ bàn phím (các số cách nhau một dấu cách):
- Dòng đầu tiên chứa ba số nguyên dương \(n,x,y\) \(\left( \ 1 \leq n \leq {2.10}^{5};x,y \leq n \right)\).
- Dòng thứ hai chứa \(n\) số nguyên \(a_{1},a_{2},..,a_{n}\) (\(0 < \left| a_{1} \right| < \left| a_{2} \right| < \ldots < \left| a_{n} \right| < 10^{6}\)).
Dữ liệu ra: in ra màn hình một dòng duy nhất là hai số \(u,\ v\) tìm được (các số cách nhau một dấu cách). Nếu có nhiều cặp số \((u,\ v)\) thỏa mãn bài toán thì in ra cặp số \((u,\ v)\) có \(u\) nhỏ nhất; nếu không tìm được \(u,v\) thỏa mãn yêu cầu thì in ra \(- 1\).
Ví dụ:
Dữ liệu vào | Dữ liệu ra | Giải thích |
---|---|---|
4 1 2 1 -2 -3 4 | 1 3 | * Có 3 cặp số \(u,v\) thỏa mãn các điều kiện: Cặp \(\left\{ u = 1,v = 4 \right\}\) có \(v - u = 3\) Cặp \(\left\{ u = 1,v = 3 \right\}\) có \(v - u = 2\) Cặp \(\left\{ u = 2,v = 4 \right\}\) có \(v - u = 2\) * Cặp \(\left\{ u = 1,v = 3 \right\}\) có \(v - u = 2\) nhỏ nhất và \((u,v)\) có \(u\) nhỏ nhất. |
Ràng buộc:
- Có 50% số test tương ứng 50% số điểm của bài có \(n \leq 2.10^{2}\), \(\left| a_{i} \right| \leq 10^{2}\);
- Có 30% số test tương ứng 30% số điểm của bài có \(2.10^{2} < n \leq 2.10^{3}\), \(\left| a_{i} \right| \leq 10^{4}\);
- Có 20% số test tương ứng 20% số điểm của bài có \(2.10^{3} < n \leq \ 2.10^{5}\), \(\left| a_{i} \right| \leq 10^{6}\).
Code tích cực |
---|
Trong 24h |
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |