top1编程
← 返回题目
题解

求最大公约数问题

2 条题解

  • 0
    @ 2026-7-29 20:22:33
    #include <bits/stdc++.h>
    using namespace std;
    int gcd(int x, int y) {
    	if (y == 0) {
    		return x;
    	} 
    	return gcd(y, x % y);
    }
    int main(){
    	int n, m;
    	cin >> n >> m;
    	cout << "gcd=" << gcd(n, m);
    }
    
    • 0
      @ 2026-7-28 22:45:18
      #include <bits/stdc++.h>
      using namespace std;
      long long gys(long long a,long long b){
      	if(a%b!=0){
      		return gys(b,a%b);
      	}else{
      		return b;
      		//余数为0,除数是最大公约数
      	}
      }
      int main() {
      	long long a,b;
      	cin>>a>>b;
      	cout<<"gcd="<<gys(a,b);
      	return 0;
      }
      
      • 1