题解 | #有序序列合并#
有序序列合并
https://www.nowcoder.com/practice/a9e943b0dab142759807d0cfb6863897
#include <stdio.h> int main() { int a, b; int a1[1000], a2[1000], a3[2000]; while (scanf("%d %d", &a, &b) != EOF) { for (int i = 0; i < a; i++) scanf("%d", &a1[i]); for (int i = 0; i < b; i++) scanf("%d", &a2[i]); int i = 0, j = 0, k = 0, max = 0; while (i < a && j < b) { if (a1[i] < a2[j]) { a3[k] = a1[i]; i++; k++; } else { a3[k] = a2[j]; j++; k++; } } if (i < a) for (int j = i; j < a; j++) { a3[k] = a1[j]; k++; } else if (j < b) for (int i = j; i < b; i++) { a3[k] = a2[i]; k++; } for (i = 0; i < a + b; i++) printf("%d ", a3[i]); } return 0; }