MảngHai con trỏ
Mô tả
Vào đầu năm học mới, cô Hương - giáo viên chủ nhiệm lớp 1A trường Tiểu học Trưng Vương - cần sắp xếp chỗ ngồi cho 36 học sinh. Để các em dễ hòa đồng, cô muốn đưa hai bạn có chiều cao chênh lệch nhau đúng cm ngồi chung một bàn đôi.
Cô ghi lại chiều cao của từng em vào một danh sách. Nhiệm vụ của bạn là giúp cô Hương xác định xem trong lớp có tồn tại ít nhất một cặp học sinh thỏa mãn hiệu hai chiều cao là hay không. Lưu ý rằng hai học sinh phải là hai người khác nhau, tức là hai vị trí khác nhau trong danh sách.
Đầu vào
Hàm nhận hai tham số:
heights: một mảng số nguyên dương đại diện cho chiều cao của từng học sinh (tính bằng cm).D: một số nguyên không âm đại diện cho chênh lệch chiều cao cần tìm.
Đầu ra
- Trả về
truenếu tồn tại ít nhất một cặp học sinh với sao cho . - Trả về
falsenếu không có cặp nào thỏa mãn.
Ràng buộc
- , trong đó là số lượng học sinh trong mảng
heights. - với mọi .
Ví dụ
Ví dụ 1:
- Đầu vào:
heights = [120, 115, 105, 118, 110],D = 5 - Đầu ra:
true - Giải thích: Cô Hương có thể ghép bạn cao 120 cm với bạn cao 115 cm vì . Ngoài ra, cặp (115, 110) cũng có hiệu là 5. Vậy kết quả là
true.
Ví dụ 2:
- Đầu vào:
heights = [100, 100, 100],D = 0 - Đầu ra:
true - Giải thích: Khi , ta chỉ cần tìm hai học sinh có cùng chiều cao. Ở đây có ba bạn đều cao 100 cm, nên ta có thể chọn bất kỳ hai bạn nào trong số đó. Kết quả là
true.
Ví dụ 3:
- Đầu vào:
heights = [105, 110, 115],D = 10 - Đầu ra:
false - Giải thích: Ta kiểm tra tất cả các cặp: , , nhưng . Vì 105 và 115 là hai vị trí khác nhau và chênh lệch 10 cm nên kết quả là . (Sửa lại: kết quả thực sự là do cặp (105, 115) thỏa mãn).