GCD 합

BiBi·2021년 1월 19일
0

코딩테스트연습

목록 보기
43/66
#include <algorithm>
#include <iostream>
#include <stdio.h>
#include <vector>
#include <map>
#include <stack>
#include <queue>
#include <deque>
#include <string>
#include <cmath>
using namespace std;

int gcd(int a, int b) {
	int tmp;
	while (b != 0) {
		tmp = a % b;
		a = b;
		b = tmp;
	}
	return a;
}


int main() {
	//freopen("input.txt", "rt", stdin);
	int t;
	scanf("%d", &t);
	for (int i = 0; i < t; i++) {
		int n;
		scanf("%d", &n);
		vector<int> v;
		for (int i = 0; i < n; i++) {
			int num;
			scanf("%d", &num);
			v.push_back(num);
		}
		long long sum = 0;
		for (int i = 0; i < v.size() - 1; i++) {
			for (int j = i + 1; j < v.size(); j++) {
				sum = sum + gcd(v[i], v[j]);
			}
		}
		printf("%lld\n", sum);
	}


	return 0;
}
profile
Server Network Engineer

0개의 댓글