
수빈이와 동생들과의 거리간의 최대공약수를 찾으면 된다. 모든 동생들과 만날 수 있어야하고 (=공약수여야하고), 초당 이동거리가 최대여야한다 (=공약수 중 최댓값, 즉 최대공약수여야 한다.)
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");
int n = Integer.parseInt(st.nextToken());
int s = Integer.parseInt(st.nextToken());
int[] d = new int[n];
st = new StringTokenizer(br.readLine(), " ");
for (int i=0; i<n; i++) {
d[i] = Math.abs(s-Integer.parseInt(st.nextToken()));
}
Arrays.sort(d);
int ans = d[0];
for (int i=1; i<n; i++) {
ans = gcd(ans, d[i]);
}
System.out.println(ans);
}
static int gcd(int minor, int major) {
while (major%minor!=0) {
int temp = minor;
minor = major%minor;
major = temp;
}
return minor;
}
}'백준 문제풀이' 카테고리의 다른 글
| 1212. 8진수 2진수 (자바, Java) (0) | 2022.11.22 |
|---|---|
| 1373. 2진수 8진수 (자바, Java) (0) | 2022.11.22 |
| 9613. GCD 합 (자바, Java) (0) | 2022.11.22 |
| 11656. 접미사 배열 (자바, Java) (0) | 2022.11.20 |
| 10824. 네 수 (Java, 자바) (0) | 2022.11.20 |