求gcd


求最大公约数

小tips,就是简单mark一下欧几里得算法。

int gcd(int a , int b)
{
    return b ? (gcd(b , a%b)) : a ; 
}

算了,还是贴一题吧….

最大公约数


给定 n 对正整数 ai,bi,请你求出每对数的最大公约数。

输入格式

第一行包含整数 n。

接下来 n 行,每行包含一个整数对 ai,bi。

输出格式

输出共 n 行,每行输出一个整数对的最大公约数。

数据范围

1≤n≤105,
1≤ai,bi≤2×109

输入样例:

2
3 6
4 6

输出样例:

3
2
#include 

using namespace std ;

int gcd(int a , int b)
{
    return b ? gcd(b,a%b) : a ; 
}

int main()
{
    int n ; 
    cin >> n ;
    while(n--)
    {
        int a , b ; 
        cin >> a >> b ; 
        
        int res = gcd(a , b) ;
        
        cout << res << endl ; 
    }
    
    return 0 ; 
}

文章作者: 罗林
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 罗林 !
  目录