一周一更

gcd和lcm

#include <iostream>
using namespace std;
int gcd(int a, int b){
	if(b==0){
		return a;
	}else{
		return gcd(max(a%b,b),min(a%b,b));
	}
}
int main(){
	int a, b;
	cin >> a >> b;
	int cnt=0;
	for(int i=a;i<=b;i++){
		if((a*b)%i==0&&gcd(i,(a*b)/i)==a){
			cnt++;
		}
	}
	cout << cnt;
	return 0;
}

最大公约数

#include <bits/stdc++.h>
using namespace std;
int a1[100000000];
int b1[100000000];
int main(){
	int a, b;
	cin >> a >> b;
	cout << __gcd(a,b);
	return 0;
}