2-1) 투포인터 알고리즘으로 풀기 (배열)
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] a = new int[n];
for(int i=0; i<n; i++){
a[i] = sc.nextInt();
}
Arrays.sort(a); // 배열 정렬
int m = sc.nextInt();
int[] b = new int[m];
for(int i=0; i<m; i++){
b[i] = sc.nextInt();
}
Arrays.sort(b); // 배열 정렬
ArrayList<Integer> list = new ArrayList<>();
int p1=0,p2=0;
while(p1<n && p2<m){
if(a[p1] == b[p2]){ // 배열에서는 값(원시타입)으로 저장되기때문에 ==로 비교한다
list.add(a[p1]);
p1++;
p2++;
} else if(a[p1] < b[p2]) p1++;
else p2++;
}
for(int i=0; i<list.size(); i++){
System.out.print(list.get(i) + " ");
}