1. ํ๋ ธ๋ ๊ฒ
import java.util.HashSet;
import java.util.Iterator;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
HashSet<Integer> set = new HashSet<>();
int N = sc.nextInt();
for (int i = 1; i <= N; i++) {
if(N%i == 0) {
set.add(i);
}
}
Iterator iter = set.iterator();
while (iter.hasNext()){
System.out.print(iter.next()+ " ");
}
}
}
set์ ๊ฐ์ด ์ ์ฅ๋ ์์์ ์๊ด์์ด ๋ฌด์์๋ก ๋ด๋ถ์ ์ ์ฅ๋๋ ๊ฒ์ ๊ฐ๊ณผํ๋ค.
์ค๋ฆ์ฐจ์์ ์ํ๋ ๋ต๊ณผ ๋ค๋ฅด๋ค.
Iterator์ ๋ํ์ฌ
<์ฐธ๊ณ >
[JAVA] Iterator :: ์ ์ ๊ณผ ์๊ฐ์ ๋ฐฉ (tistory.com)
iterator๋ ์ฑ
๊ฐํผ์ด๋ค. ๊ธฐ๋ณธ ์์น๋ ํญ์ ํด๋น ์๋ฃ๊ตฌ์กฐ ์ฒซ ๊ฐ ์์ ์ ์ด๋ค. iterator๋ ๋ฐ๋ณต์ ๋ผ๊ณ ๋ถ๋ฅธ๋ค.
hasNext() : iterator๊ฐ ๊ฐ ์ ์๋ ๋ค์ ๊ฐ์ด ์กด์ฌํฉ๋๊น? ์กด์ฌํ๋ฉด true ์๋๋ฉด false ๋ฐํ
iterator.next(): ๋ฐ๋ณต์๋ฅผ ๋ค์ ๊ฐ์ผ๋ก ์ด๋.
iterator.remove(): ๋ฐ๋ณต์๊ฐ ํ์ฌ ์๋ index์ ๊ฐ์ ์ปฌ๋ ์
์์ ์ ๊ฑฐํจ.
๋ง์ฝ ์ฌ์ฉ์๊ฐ ๋ฐ๋ณต์๋ฅผ ์ฒ์ ์์น๋ก ๋๋๋ ค ๋์ง ์์ผ๋ฉด ๋ฐ๋ณต์๋ next()๋ก ๊ฐ ์์น์ ๋จธ๋ฌผ๋ฌ ์๋๋ค.
ํด๋น ๋ฐ๋ณต์๋ฅผ ๋ค์ ๋๋๋ ค ๋์ผ๋ ค๋ฉด ๋ฐ๊ณผ ๊ฐ์ด ์ฌ ํ ๋น ํด์ผ ํ๋ค.
2. ์ ๋ต
import java.util.ArrayList;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
ArrayList<Integer> list = new ArrayList<>();
int N = sc.nextInt();
for (int i = 1; i <= N; i++) {
if(N%i == 0) {
list.add(i);
}
}
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i)+ " ");
}
}
}