题目链接:https://www.acwing.com/problem/content/description/874/
时/空限制:1.500000s / 64MB
题目描述
给定n对正整数ai,bi,请你求出每对数的最大公约数。
输入格式
第一行包含整数n。
接下来n行,每行包含一个整数对ai,bi。
输出格式
输出共n行,每行输出一个整数对的最大公约数。
数据范围
1≤n≤105,
1≤ai,bi≤2∗10^9
输入样例
2
3 6
4 6
输出样例
3
2
解题思路
题意:求两个数的最大公约数。
思路:利用欧几里得的辗转相除法。
Accepted Code:
/*
* @Author: lzyws739307453
* @Language: C++
*/
#include <bits/stdc++.h>
using namespace std;
int gcd(int a, int b) {
return b ? gcd(b, a % b) : a;
}
int main() {
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++) {
int a, b;
scanf("%d%d", &a, &b);
printf("%d\n", gcd(a, b));
}
return 0;
}