Hai con trỏMảng
Mô tả
Hội trường trường Đại học Thăng Long được bố trí làm điểm tiêm vaccine Covid-19. Vì số lượng người đăng ký rất đông, ban y tế chia hàng chờ thành hai luồng độc lập: một luồng dành cho người đăng ký trực tuyến và một luồng dành cho người đăng ký tại chỗ. Mỗi người được phát một số thứ tự duy nhất.
Để công bằng và rút ngắn thời gian chờ đợi, tình nguyện viên muốn gộp hai luồng này lại thành một hàng chung sao cho thứ tự các số thứ tự vẫn tăng dần. Vì hai luồng ban đầu đã được sắp xếp tăng dần, bạn hãy viết chương trình trợ giúp tình nguyện viên thực hiện việc gộp này một cách nhanh chóng nhất.
Đầu vào
Chương trình nhận dữ liệu qua đối số của hàm:
mangA: mảng số nguyên đại diện cho danh sách số thứ tự của luồng thứ nhất, đã sắp xếp tăng dần.mangB: mảng số nguyên đại diện cho danh sách số thứ tự của luồng thứ hai, đã sắp xếp tăng dần.
Đầu ra
- Trả về một mảng số nguyên là kết quả của việc gộp
mangAvàmangB, sao cho mảng kết quả cũng được sắp xếp tăng dần.
Ràng buộc
- Độ dài của mỗi mảng nằm trong khoảng từ 0 đến 10^5 phần tử.
- Mỗi giá trị số thứ tự là số nguyên dương nằm trong khoảng từ 1 đến 10^9.
- Các giá trị trong mỗi mảng đầu vào là phân biệt và đã được sắp xếp tăng dần.
Ví dụ
Ví dụ 1:
- Đầu vào:
mangA = [1, 3, 5],mangB = [2, 4, 6] - Đầu ra:
[1, 2, 3, 4, 5, 6] - Giải thích: Ta so sánh từng cặp phần tử đầu hai mảng. Đầu tiên 1 < 2, lấy 1; tiếp theo 3 > 2, lấy 2; rồi 3 < 4, lấy 3; cứ thế đến khi hết phần tử ở cả hai mảng ta thu được danh sách tổng hợp.
Ví dụ 2:
- Đầu vào:
mangA = [],mangB = [10, 20] - Đầu ra:
[10, 20] - Giải thích: Luồng trực tuyến không có ai đăng ký, nên kết quả gộp chính là danh sách của luồng đăng ký tại chỗ.