辗转相除法(既约分数)

简介: 辗转相除法(既约分数)

(12,8)->(8,4)->(4,0)

(12,7)->(7,5)->(5,2)->(2,1)->(1,0)

一般用来求两个数的最大公约数

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

如果一个分数的分子和分母的最大公约数是 11,这个分数称为既约分数。

例如 \frac{3}{4} ,\frac{1}{8} ,\frac{7}{1}43,81,17, 都是既约分数。

请问,有多少个既约分数,分子和分母都是 11 到 20202020 之间的整数(包括 11 和 20202020)?

运行限制


最大运行时间:2s

最大运行内存: 128M


import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
    public static void main(String[] args) {
      int count=0;
        for(int i=1;i<2021;i++){
          for(int j=1;j<2021;j++){
            if(f(i,j)==1){
              count++;
            }
          }
    }
    System.out.println(count);
}
public static int f(int a,int b){
   if(b==0){
     return a;
   }
   return f(b,a%b);
}
}
相关文章
|
20天前
82: 求组合数
82: 求组合数
|
1天前
分数1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 求和
分数1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 求和
5 0
|
17天前
|
算法 测试技术 C#
【数学】【数论】【最大公约数】1819. 序列中不同最大公约数的数目
【数学】【数论】【最大公约数】1819. 序列中不同最大公约数的数目
|
17天前
PTA-第4章-2 统计素数并求和
该代码用于统计并求和给定区间[M, N](1≤M≤N≤500)内的素数。输入包含两整数M和N,输出为素数个数和它们的和。例如,输入10 31,输出7 143。代码通过遍历区间,检查每个数是否能被小于它的数整除来判断是否为素数。
20 0
|
3月前
|
算法 Python
最小公倍数算法
最小公倍数算法
|
7月前
质因数分解
质因数分解
|
9月前
1209:分数求和
1209:分数求和
PTA 1056 组合数的和 (15 分)
给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。
90 0
欧几里得算法,既辗转相除法。用于计算正整数a,b的最大公约数
欧几里得算法,既辗转相除法。用于计算正整数a,b的最大公约数
83 0