728x90
테스트 케이스 수를 받아 while 문으로 각 테스트 케이스를 실행한다.
테스트 케이스안 숫자 갯수를 받아서 정수형 배열 크기를 만든다.
for문을 이용하여 배열에 입력한다.
이중 for문을 이용하여 배열 안에 GCD를 구하여 count에 누적합을 한다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
private int gcd(int a, int b) {
int r = -1;
while (r!=0) {
r = a%b;
a = b;
b = r;
}
return a;
}
private void solution() throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
while (t-->0) {
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
long sum = 0;
for (int i = 0; i < arr.length-1; i++) {
for (int j = i+1; j < arr.length; j++) {
sum += gcd(arr[i], arr[j]);
}
}
sb.append(sum).append('\n');
}
System.out.print(sb);
}
public static void main(String[] args) throws Exception {
new Main().solution();
}
}
'알고리즘 기초1 Java' 카테고리의 다른 글
수학1_17087 번 : 골드바흐 파티션 JAVA (2) | 2024.03.22 |
---|---|
수학1_17087 번 : 숨바꼭질 JAVA (2) | 2024.03.22 |
수학1_1676 번 : 팩토리얼 0의 개수 JAVA (0) | 2024.03.21 |
수학1_10872 번 : 팩토리얼 JAVA (0) | 2024.03.20 |
수학1_1978 번 : 소수찾기 JAVA (0) | 2024.03.20 |