HJ80. 整型数组合并
描述
题目标题:
输入描述
输入说明,按下列顺序输入:
1 输入第一个数组的个数
2 输入第一个数组的数值
3 输入第二个数组的个数
4 输入第二个数组的数值
输出描述
输出合并之后的数组
示例1
输入:
3 1 2 5 4 -1 0 3 2
输出:
-101235
C 解法, 执行用时: 1ms, 内存消耗: 256KB, 提交时间: 2020-07-07
#include <stdio.h> int main() { int m; int num[1000]; while(scanf("%d",&m) != EOF) { for(int i = 0;i < m;i++) { scanf("%d",&num[i]); } int n; int tmp; scanf("%d",&n); for(int j = 0;j < n;j++) { scanf("%d",&num[m+j]); } for(int i = 0;i < m + n -1;i++) { for(int j = 0;j < m + n -1 - i;j++) { if(num[j] > num[j+1]) { tmp = num[j]; num[j] = num[j+1]; num[j+1] = tmp; } } } printf("%d",num[0]); for(int i = 1;i < m + n;i++) { if(num[i] != num[i-1]) { printf("%d",num[i]); } } printf("\n"); } return 0; }
C 解法, 执行用时: 1ms, 内存消耗: 256KB, 提交时间: 2020-07-07
#include<stdio.h> #include<string.h> int main() { int n1,n2; while (scanf("%d",&n1)!=EOF) { int in1[1000]; for(int i=0;i<=n1-1;i++) {scanf("%d",&in1[i]);} scanf("%d",&n2); //int in2[n2]; for(int i=n1;i<=n1+n2-1;i++) {scanf("%d",&in1[i]);} for(int i=0;i<=n1+n2-2;i++) { for(int j=0;j<=n1+n2-2-i;j++) { if(in1[j]>in1[j+1]) { int temp; temp=in1[j]; in1[j]=in1[j+1]; in1[j+1]=temp; } } } printf("%d",in1[0]); for(int i=1;i<=n1+n2-1;i++) { if(in1[i-1]==in1[i]); else printf("%d",in1[i]); } printf("\n"); } }