Điểm:
10 (p)
Thời gian:
1.0s
Bộ nhớ:
2M
Input:
bàn phím
Output:
màn hình
Cho 2 mảng số nguyên đã được sắp xếp theo thứ tự tăng dần.
Hãy trộn 2 mảng đó lại thành mảng C sao cho mảng C vẫn có thứ tự tăng dần.
Input:
- Dòng đầu chứa 2 số nguyên: M, N
- Dòng tiếp theo chứa các phần tử a1,…,aM tăng dần
- Dòng tiếp theo chứa các phần tử b1,…,bN tăng dần
Output: - Dòng đầu ghi: M+N
- Dòng sau ghi: C1, C2,…, CM+N tăng dần
TEST CASE 1
ĐẦU VÀO
5 3
1 3 5 7 9
2 4 6
ĐẦU RA
8
1 2 3 4 5 6 7 9
Gợi ý:
- Dùng 2 chỉ số i,j để duyệt qua các phần tử của 2 mảng A, B và k là chỉ số cho
mảng C.
- Trong khi (i<m) và (j<n) thì:
/*Tức trong khi cả 2 dãy A, B đều chưa duyệt hết */
+ Nếu A[i]>B[j] thì: C[k]=A[i]; i=i+1;
+ Ngược lại: C[k]=B[j]; j=j+1;
- Nếu dãy nào hết trước thì đem phần còn lại của dãy kia bổ sung vào cuối dãy C
Bình luận