2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学A组 - B.既约分数

Posted Alex_996

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学A组 - B.既约分数相关的知识,希望对你有一定的参考价值。

Ideas

这题就是简单的暴力枚举,把分子和分母都从1枚举到2020,然后判断分子和分母的的最大公约数是不是1就OK了。

计算最大公约数的函数gcd直接默写。

Code

Python

def gcd(a, b):
    return a if b == 0 else gcd(b, a % b)


if __name__ == '__main__':
    ans = 0
    for zi in range(1, 2021):
        for mu in range(1, 2021):
            if gcd(zi, mu) == 1:
                ans += 1
    print(ans)

C++

#include <iostream> 

using namespace std;

int gcd(int a, int b) 
	return b == 0 ? a : gcd(b, a % b);


int main() 
	int ans = 0;
	for (int i = 1; i < 2021; i++) 
		for (int j = 1; j < 2021; j++) 
			if (gcd(i, j) == 1) 
				ans += 1;
			
		
	
	cout << "ans = " << ans << endl;
	return 0;

Answer:2481215

以上是关于2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学A组 - B.既约分数的主要内容,如果未能解决你的问题,请参考以下文章

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 国赛 - C&C++大学B组 - A.美丽的2

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 国赛 - C&C++大学B组 - B.扩散

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学C组 - A.约数个数

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学A组 - B.既约分数

2019年第十届蓝桥杯组队题目第一题

十二届蓝桥杯Scratch国赛试题