數組-06. 找出不是兩個數組共有的元素


數組-06. 找出不是兩個數組共有的元素(20)

時間限制
400 ms
內存限制
65536 kB
代碼長度限制
8000 B
判題程序
Standard
作者
張彤彧(浙江大學)

給定兩個整型數組,本題要求找出不是兩者共有的元素。

輸入格式:

輸入分別在2行中給出2個整型數組,每行先給出正整數N(<=20),隨后是N個整數,其間以空格分隔。

輸出格式:

在一行中按照數字給出的順序輸出不是兩數組共有的元素,數字間以空格分隔,但行末不得有多余的空格。題目保證至少存在一個這樣的數字。同一數字不重復輸出。

輸入樣例:
10 3 -5 2 8 0 3 5 -15 9 100
11 6 4 8 2 6 -5 9 0 100 8 1
輸出樣例:
3 5 -15 6 4 1
 1 #include<stdio.h>
 2 #include<math.h>
 3 #include<stdlib.h>
 4 #include<string.h>
 5 int main()
 6 {
 7     int i, j, m, n, a[25], b[25], c[25], k = 0, flag, equal;
 8     scanf("%d", &m);
 9     for(i = 0; i < m; i++)
10         scanf("%d", &a[i]);
11     scanf("%d", &n);
12     for(i = 0; i < n; i++)
13         scanf("%d", &b[i]);
14     for(i = 0; i < m; i++)
15     {
16         flag = 0;
17         for(j = 0; j < i; j++)
18             if(a[i] == a[j])
19                 flag = 1;
20         if(!flag)
21         {
22             equal = 0;
23             for(j = 0; j < n; j++)
24                 if(a[i] == b[j])
25                 {
26                     equal = 1;
27                     break;
28                 }
29             if(!equal)
30                 c[k++] = a[i];
31         }
32     }
33     for(i = 0; i < n; i++)
34     {
35         flag = 0;
36         for(j = 0; j < i; j++)
37             if(b[i] == b[j])
38                 flag = 1;
39         if(!flag)
40         {
41             equal = 0;
42             for(j = 0; j < m; j++)
43                 if(b[i] == a[j])
44                 {
45                     equal = 1;
46                     break;
47                 }
48             if(!equal)
49                 c[k++] = b[i];
50         }
51     }
52     printf("%d", c[0]);
53     for(i = 1; i < k; i++)
54             printf(" %d", c[i]);
55     printf("\n");
56     return 0;
57 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM