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.约数个数