mcp


私信TA

用户名:mcp

访问量:15298

签 名:

等  级
排  名 1765
经  验 2655
参赛次数 0
文章发表 18
年  龄 0
在职情况 学生
学  校 烟台大学
专  业

  自我简介:


解题思路:





注意事项:





参考代码:

import java.util.Arrays;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int a[] = new int[10000];
		for (int i = 0; i < n; i++)
			a[i] = sc.nextInt();
		int m = sc.nextInt();
		int b[] = new int[10000];
		for (int i = 0; i < m; i++)
			b[i] = sc.nextInt();
		/** 交集 */
		int c[] = new int[10000];
		int t = 0;
		for (int i = 0; i < n; i++)
			for (int j = 0; j < m; j++)
				if (a[i] == b[j]) {
					c[t] = a[i];
					t++;
				}
		Arrays.sort(c, 0, t);
		for (int i = 0; i < t; i++)
			System.out.print(c[i] + " ");
		System.out.println();
		/** 并集 */
		int d[] = new int[10000];
		for (int i = 0; i < n; i++)
			d[i] = a[i];
		for (int i = n; i < n + m; i++)
			d[i] = b[i - n];
		Arrays.sort(d, 0, n + m);
		for (int i = 0; i < n + m; i++)
			if (d[i] == d[i + 1])
				continue;
			else
				System.out.print(d[i] + " ");
		System.out.println();
		/** 补集 */
		Arrays.sort(a, 0, n);
		int e[] = new int[10000];
		int k = 0;
		for (int i = 0; i < n; i++) {
			boolean f = true;
			for (int j = 0; j < t; j++) {
				if (a[i] == c[j]) {
					f = false;
					break;
				}
			}
			if (f) {
				e[k] = a[i];
				k++;
			}
		}
		for (int i = 0; i < e.length; i++)
			if (e[i] != 0)
				System.out.print(e[i] + " ");
	}
}


 

0.0分

0 人评分

  评论区

  • «
  • »