Mô tả
Trạm truy vết dịch tễ Bệnh viện Chợ Rẫy ghi nhận dữ liệu ca nhiễm theo từng ngày liên tục. Mỗi ngày, hệ thống lưu lại mã khu vực phát hiện ca nhiễm đó. Sau khi thu thập xong, giám đốc trung tâm yêu cầu rút trích thông tin nhanh chóng: với một khu vực cụ thể, hãy đếm xem khu vực đó có tổng cộng bao nhiêu ca nhiễm chỉ trong khoảng thời gian từ ngày bắt đầu đến ngày kết thúc (kể cả hai ngày này).
Dữ liệu đầu vào là một mảng tĩnh thể hiện thứ tự các ca nhiễm theo ngày. Ngày đầu tiên tương ứng với vị trí đầu tiên của mảng (chỉ số 1). Nhiệm vụ của bạn là xử lý một truy vấn: cho biết mã khu vực cần tra cứu và khoảng thời gian, hãy trả về số ca nhiễm đếm được.
Đầu vào
- Một mảng
ma_khu_vucchứa các số nguyên dương đại diện cho mã khu vực của từng ca nhiễm theo thứ tự ngày. - Một số nguyên
khu_vuc_tra_cuulà mã khu vực cần đếm. - Hai số nguyên
ngay_bat_dauvàngay_ket_thucxác định khoảng thời gian truy vấn (đánh chỉ số từ 1).
Đầu ra
- Trả về một số nguyên là tổng số ca nhiễm của khu vực được tra cứu nằm trong khoảng thời gian đã cho.
Ràng buộc
- Số lượng ca nhiễm ghi nhận:
1 <= n <= 10^5. - Mã khu vực và các giá trị truy vấn:
1 <= x <= 10^9. - Chỉ số ngày hợp lệ:
1 <= ngay_bat_dau <= ngay_ket_thuc <= n. - Kết quả đếm luôn nằm trong khoảng số nguyên 32-bit.
Ví dụ
Giả sử dữ liệu ca nhiễm theo ngày là [104, 105, 104, 106, 104, 105], mã khu vực tra cứu là 104, từ ngày 2 đến ngày 5.
- Xét đoạn từ ngày 2 đến ngày 5, ta lấy mảng con gồm các mã:
[105, 104, 106, 104]. - Đếm số lần xuất hiện của khu vực 104 trong mảng con này, ta thấy 104 xuất hiện 2 lần.
- Kết quả trả về là
2.