国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

算法訓練 集合運算

2019-11-10 17:22:55
字體:
來源:轉載
供稿:網友

算法訓練 集合運算  時間限制:1.0s   內存限制:512.0MB      錦囊1排序后處理。錦囊2先排序,對于每個集合的操作,都使用兩個指針來指向排序后的集合,對于相同元素特別處理。問題描述  給出兩個整數集合A、B,求出他們的交集、并集以及B在A中的余集。輸入格式  第一行為一個整數n,表示集合A中的元素個數。  第二行有n個互不相同的用空格隔開的整數,表示集合A中的元素。  第三行為一個整數m,表示集合B中的元素個數。  第四行有m個互不相同的用空格隔開的整數,表示集合B中的元素。  集合中的所有元素均為int范圍內的整數,n、m<=1000。輸出格式  第一行按從小到大的順序輸出A、B交集中的所有元素。  第二行按從小到大的順序輸出A、B并集中的所有元素。  第三行按從小到大的順序輸出B在A中的余集中的所有元素。樣例輸入51 2 3 4 552 4 6 8 10樣例輸出2 41 2 3 4 5 6 8 101 3 5樣例輸入41 2 3 435 6 7樣例輸出1 2 3 4 5 6 71 2 3 4當時想偷個懶,以為所有的數據都是在不大的范圍內,沒想到測試數據有點變態。居然還有負數和很大數據。

當時想到用各個很大的數組裝就行了,從而不用排序,不過確實是行得通的,居然以下子就過了80%的數據。

代碼:

import java.util.Scanner;public class 集合運算 {		static int[] data=new int[8836460];	public static void main(String[] args) {				//System.out.PRintln((int)Math.pow(2, 31)-1);		Scanner sc=new Scanner(System.in);		int n=sc.nextInt();		for (int i = 0; i < n; i++) {			data[sc.nextInt()]=1;		}				int m=sc.nextInt();		for (int i = 0; i < m; i++) {			data[sc.nextInt()]+=2;		}		int co1=0,co2=0;		for (int i = 0; i < data.length; i++) {			if(data[i]==3){				System.out.print(i+" ");				co1=1;			}		}		if(co1==1)			System.out.println();		for (int i = 0; i < data.length; i++) {			if(data[i]>0){				System.out.print(i+" ");				co2=1;			}		}		if(co2==1)			System.out.println();		for (int i = 0; i < data.length; i++) {			if(data[i]==1){				System.out.print(i+" ");			}		}	}}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 保亭| 巩留县| 洛扎县| 资兴市| 环江| 黑龙江省| 姚安县| 安顺市| 临湘市| 贺兰县| 大宁县| 汝城县| 武强县| 舞阳县| 海宁市| 三江| 鄯善县| 焉耆| 池州市| 永顺县| 南和县| 府谷县| 化州市| 颍上县| 酉阳| 法库县| 吉隆县| 临漳县| 喀喇沁旗| 江川县| 东城区| 无极县| 承德县| 新营市| 宜昌市| 阳西县| 葫芦岛市| 定边县| 哈巴河县| 兴仁县| 柳林县|