返回题解分享
讨论 / 题解分享/ 帖子详情

既约分数(结果填空) - 题解

最开始我想的是令j = i + 1,就把1/3和3/1,这种的记成1种,然后出来再乘以2,结果最后1240607,乘以2输出,结果不对,为什么?
因为我忘记了1/1这个特例,最后直接j = 1吧,然后直接AC。

#include<bits/stdc++.h>

using namespace std;

int main()
{
	int data[2200];
	int ans = 0;
	
	for(int i = 1; i <= 2020; i++){
		data[i] = i;
	}	
	
	for(int i = 1; i <= 2020; i++){
		for(int j = 1; j <= 2020; j++){
			if(__gcd(data[i],data[j]) == 1)
				ans++;
		}
	}
	cout << ans;
	return 0;
}
0 回复 0 转发 0 喜欢 1 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!