1. 程式人生 > >HDOJ--2034 人見人愛A-B

HDOJ--2034 人見人愛A-B

2 3 NULL注意:從小到大按順序輸出。 import java.util.Scanner; public class Gether { public static void main(String[] args) { Scanner sc =new Scanner(System.in); while(sc.hasNext()){ int n=sc.nextInt(); int m=sc.nextInt(); int ns[] = new int[n]; int ms[] = new int[m]; int cs[] = new int[n]; for(int i=0;i<ns.length;i++){ ns[i]=sc.nextInt(); } for(int i=0;i<ms.length;i++){ ms[i]=sc.nextInt(); } if(n==0&&m==0){ return; } if(n==0&&m!=0){ System.out.println("NULL"); continue; } if(n!=0&&m==0){ for(int i=0;i<n-1;i++){ //從小到大輸出結果 for(int j=i+1;j<n;j++){ if(ns[i]>ns[j]){ ns[i]=ns[i]^ns[j]; ns[j]=ns[i]^ns[j]; ns[i]=ns[i]^ns[j]; } } } for(int i=0;i<ns.length;i++){ System.out.print(ns[i]+" "); } System.out.println(); continue; } int num=0; for(int i=0;i<ns.length;i++){ int conunt=0; for(int j=0;j<ms.length;j++){ if(ns[i]!=ms[j]){ conunt++; } if(conunt==m){ cs[num]=ns[i]; //在A集合中找到一個放入cs陣列中 num++; } } } for(int i=0;i<num-1;i++) { //將結果按重大到小的順序輸出 for(int j=i+1;j<num;j++){ if(cs[i]>cs[j]){ cs[i]=cs[i]^cs[j]; cs[j]=cs[i]^cs[j]; cs[i]=cs[i]^cs[j]; } } } if(num==0){ System.out.println("NULL"); }else{ for(int i=0;i<num;i++){ System.out.print(cs[i]+" "); } System.out.println(); } } } }