Bài 16.4. Truy Vấn Sản Phẩm Trong Khoảng Giá - [Độ khó: Khá]
Bài 16.4. Truy Vấn Sản Phẩm Trong Khoảng Giá - [Độ khó: Khá]
Một công ty thương mại điện tử có một danh sách khổng lồ các sản phẩm, mỗi sản phẩm có một mã SKU (ID) và giá bán. Khách hàng thường xuyên muốn tìm kiếm các sản phẩm nằm trong một khoảng giá nhất định. Để cải thiện trải nghiệm người dùng, bạn cần viết một chương trình để lọc ra các sản phẩm theo khoảng giá đã cho, sau đó hiển thị chúng theo thứ tự tăng dần của mã SKU.
INPUT FORMAT
Dòng đầu tiên chứa một số nguyên dương N
(\(1 \le N \le 10^5\)), là tổng số lượng sản phẩm.
N
dòng tiếp theo, mỗi dòng chứa hai số nguyên: SKU
và GIA_BAN
.
SKU
: Số nguyên dương (\(1 \le SKU \le 10^9\)).GIA_BAN
: Số nguyên không âm (\(0 \le GIA\_BAN \le 10^9\)). Dòng cuối cùng chứa hai số nguyênL
vàR
(\(0 \le L \le R \le 10^9\)), đại diện cho khoảng giá mong muốn[L, R]
.
OUTPUT FORMAT
In ra các sản phẩm thỏa mãn điều kiện, mỗi sản phẩm trên một dòng với SKU
và GIA_BAN
cách nhau bởi một khoảng trắng.
Các sản phẩm phải được in ra theo thứ tự tăng dần của SKU
.
Nếu không có sản phẩm nào thỏa mãn, in ra "KHONG CO SAN PHAM".
Ví dụ 1:
Input:
7
101 1500
105 2000
102 1200
108 2500
103 1800
106 1200
104 3000
1200 2000
Output:
101 1500
102 1200
103 1800
105 2000
106 1200
Giải thích 1:
- Các sản phẩm ban đầu: (101, 1500), (105, 2000), (102, 1200), (108, 2500), (103, 1800), (106, 1200), (104, 3000).
- Khoảng giá yêu cầu là
[1200, 2000]
. - Lọc các sản phẩm trong khoảng giá này:
- (101, 1500) -> Thỏa mãn
- (105, 2000) -> Thỏa mãn
- (102, 1200) -> Thỏa mãn
- (103, 1800) -> Thỏa mãn
- (106, 1200) -> Thỏa mãn
- Các sản phẩm khác (108, 2500), (104, 3000) không thỏa mãn.
- Các sản phẩm thỏa mãn: (101, 1500), (105, 2000), (102, 1200), (103, 1800), (106, 1200).
- Sắp xếp các sản phẩm này theo
SKU
tăng dần: (101, 1500), (102, 1200), (103, 1800), (105, 2000), (106, 1200).
Ví dụ 2:
Input:
3
1 10
2 20
3 30
50 100
Output:
KHONG CO SAN PHAM
Giải thích 2:
- Không có sản phẩm nào có giá nằm trong khoảng
[50, 100]
. Do đó, in ra "KHONG CO SAN PHAM".
Comments