-
[Baekjoon - 9613] GCD 합문제 풀이/Baekjoon Online Judge 2023. 2. 23. 19:09
난이도: Silver IV
태그
더보기- Euclidean Algorithm → Greatest Common Divisor
풀이
1. 풀이
더보기하나의 \( i, j \) 쌍에 대해, \( \text{GCD}(A_{i}, A_{j}) \)는 log 시간에 알아낼 수 있습니다.
이러한 쌍이 \( O(N^2) \)개 있으니, 이를 다 돌려주면 됩니다.
2. 코드
더보기123456789101112131415int gcd(int a, int b){ return b==0 ? a : gcd(b, a%b); }int arr[120];void Main(){int t; cin >> t; while (t--){int n; cin >> n;for (int i = 1; i <= n; i++){ cin >> arr[i]; }ll ans = 0;for (int i = 1; i <= n; i++){for (int j = i+1; j <= n; j++){ ans += gcd(arr[i], arr[j]); }}cout << ans << endl;}}cs '문제 풀이 > Baekjoon Online Judge' 카테고리의 다른 글
[Baekjoon - 9176] 메르센 합성수 (0) 2023.02.28 [Baekjoon - 14455] Don't Be Last! (0) 2023.02.23 [Baekjoon - 27433] 팩토리얼 2 (0) 2023.02.23 [Baekjoon - 2420] 사파리월드 (0) 2023.02.23 [Baekjoon - 14897] 서로 다른 수와 쿼리 1 (0) 2023.02.21