import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
long N = Long.parseLong(br.readLine());
StringBuilder sb = new StringBuilder();
for (int i = 0; i < N; i++) {
long k = Long.parseLong(br.readLine()); // k = 7;
while(!isPrime(k))
{
k++;
}
sb.append(k).append("\n");
}
System.out.println(sb);
}
private static boolean isPrime(long num) {
if (num < 2) {
return false;
}
if (num == 2) {
return true;
}
if (num % 2 == 0) {
return false;
}
for (long i = 3; i * i <= num; i += 2) {
if (num % i == 0) {
return false;
}
}
return true;
}
} 소수를 구하는 isPrime()메서드를 외우는게 좋을 것 같다고 느꼈다. 소수를 구하는 메서드는 상당히 많이 사용하는 것 같다. 또한 while문을 이용하여 계속 반복하여 값을 증가시키는 것도 인상깊었다. 메서드를 이해하는게 힘들었고 아직 많이 부족한 것 같다. 복습이 제일 중요한 것 같다!!
PS. 오늘은 통영 여행 1일차이다. 현재 통영숙소 침대 위에서 문제를 풀고 있다. 2025.8.17 (14:29)