// 1~ 1_000_000 까지의 소수 구하기
int end = 1_000_000;
int[] sieve = new int[end+1];
for (int i = 2; i <= end; i++) {
sieve[i] = i;
}
for (int i = 2; i <= Math.sqrt(end); i++) {
if(sieve[i] == 0){
continue;
}
for (int j = i + i; j <= end; j += i) {
sieve[j] = 0;
}
}
for(int i = 2; i <= end; i++){
if(sieve[i] != 0){
System.out.println(i);
}
}// a,b 의 최대공약수
int Euclidean(int a, int b) {
if (b == 0)
return a;
return Euclidean(b, a % b);
}유클리드 호제법의 목적이 두 수의 최대 공약수를 구하는 것이라면, 확장 유클리드 호제법의 목적은 방정식의 해를 구하는 것.