💡 해당 부분에서는 int[] arr 파라미터로 받은 배열을 순회하면서 배열에 있는 모든 수의 “최대공약수”를 구합니다.
1. result 변수를 배열의 첫 번째 값으로 초기화합니다 2. 반복문을 통해 배열의 나머지 값들과 최대공약수를 구하여 result 변수에 저장합니다. 3. 최종적으로 result 변수에 저장된 값이 배열에 있는 모든 수의 최대공약수가 됩니다.
publicstaticintgcd(int[] arr){
int result = arr[0];
for (int i = 1; i < arr.length; i++) {
result = gcd(result, arr[i]);
}
return result;
}
publicstaticintgcd(int a, int b){
if (b == 0) return a;
returngcd(b, a % b);
}
💡 해당 부분에서는 int[] arr 파라미터로 받은 배열을 순회하면서 배열에 있는 모든수의 “최소공배수”를 구합니다.
1. result 변수를 배열의 첫 번째 값으로 초기화합니다 2. 반복문을 통해 배열의 나머지 값들과 최소공배수를 구하여 result 변수에 저장합니다. 3. 최종적으로 result 변수에 저장된 값이 배열에 있는 모든 수의 최소공배수가 됩니다.
publicstaticintlcm(int[] arr) {
intresult= arr[0];
for (inti=1; i < arr.length; i++) {
result = lcm(result, arr[i]);
}
return result;
}
publicstaticintlcm(int a, int b) {
return (a * b) / gcd(a, b);
}