文章

34

粉丝

9

获赞

5

访问

8.8k

头像
最简真分数 题解:最小公倍数+最大公约数
P1180 北京大学/北京航空航天大学机试题
发布于2024年7月6日 21:21
阅读数 276

#include <iostream>
#include <algorithm>

using namespace std;

const int N = 1000;

int gcdx(int a,int b){
	return b ? gcdx(b,a % b):a;
}
int main(){
	int n;
	
	while(cin >> n){
		if(n == 0)break;
		int a[N],count = 0;
		for(int i = 0;i < n;i ++)cin >> a[i];
		sort(a,a + n);
	
		
		for(int i = 0;i < n;i ++){
			for(int j = 0;j < n;j ++){
				if(i != j){
					if(a[i] / a[j] == 0 ){
						if( (a[j] * a[i] / gcdx(a[i],a[j])) == a[j] * a[i]){
							// 最小公倍数 
							count ++;
							
						}
					
					}
				}
			}
		}
		cout << count << endl;
	}	
	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发