zoukankan      html  css  js  c++  java
  • HDU 2034 人见人爱A-B

    Problem Description
    参加过上个月月赛的同学一定还记得其中的一个最简单的题目,就是{A}+{B},那个题目求的是两个集合的并集,今天我们这个A-B求的是两个集合的差,就是做集合的减法运算。(当然,大家都知道集合的定义,就是同一个集合中不会有两个相同的元素,这里还是提醒大家一下)

    呵呵,很简单吧?
     


     

    Input
    每组输入数据占1行,每行数据的开始是2个整数n(0<=n<=100)和m(0<=m<=100),分别表示集合A和集合B的元素个数,然后紧跟着n+m个元素,前面n个元素属于集合A,其余的属于集合B. 每个元素为不超出int范围的整数,元素之间有一个空格隔开.
    如果n=0并且m=0表示输入的结束,不做处理。
     


     

    Output
    针对每组数据输出一行数据,表示A-B的结果,如果结果为空集合,则输出“NULL”,否则从小到大输出结果,为了简化问题,每个元素后面跟一个空格.
     


     

    Sample Input
    3 3 1 2 3 1 4 7 3 7 2 5 8 2 3 4 5 6 7 8 0 0
     


     

    Sample Output
    2 3 NULL
     
    import java.io.BufferedInputStream;
    import java.util.*;
    
    public class Main {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(new BufferedInputStream(System.in));
    		while (sc.hasNextInt()) {
    			int a = sc.nextInt();
    			int b = sc.nextInt();
    			boolean boo = true;
    			int aa[] = new int[a];
    			boolean bo[] = new boolean[a];
    			int bb[] = new int[b];
    			if (a == 0 && b == 0)
    				break;
    			for (int i = 0; i < a; i++)
    				aa[i] = sc.nextInt();
    			for (int i = 0; i < b; i++)
    				bb[i] = sc.nextInt();
    			for (int i = 0; i < aa.length; i++) {
    				for (int j = 0; j < bb.length; j++) {
    					if (aa[i] == bb[j])
    						bo[i] = true;
    				}
    			}
    			Arrays.sort(aa);
    			for (int i = 0; i < aa.length; i++) {
    				if (bo[i] != true) {
    					boo = false;
    					System.out.print(aa[i]+" ");
    				}
    			}
    			if (boo == true)
    				System.out.print("NULL");
    			System.out.println();
    		}
    	}
    }
    


     

  • 相关阅读:
    CentOS-7 本地yum源挂载
    VMware 安装 Centos7
    linux永久关闭SELinux*
    linux添加用户
    git分支常用命令
    git 常用命令
    springboot 自定义interceptor 对请求进行拦截
    ORACLE 远程导出DMP文件
    解决idea2018无法安装lombok的问题
    centos下快速安装mysql
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3212601.html
Copyright © 2011-2022 走看看