• 最小公倍数


    #include<stdio.h>
    int gcd(long long n,long long m)
    {
        return m ? gcd(m,n%m) : n;
    }
    int main()
    {
        long long n,m;
        while(scanf("%lld %lld",&n,&m)!=EOF)
        {
            printf("%lld
    ",n*m/gcd(n,m));
        }
        return 0;
    }

    有两种方法
    1.让大的那个数*1, *2,*3,*4 一直乘到可以被另一个数整除为止(这个貌似叫累加法?忘了)
    比如 2 5
    第一步:ans=5*1 不行 第二步 ans=5*2 行了
    从小数开始也可以 不过会影响效率(要多乘几次)
    2.根据唯一分解定理 一个数最小公倍数*最大公约数=两数乘积
    所以用欧几里得算法求出最大公约数 用两数乘积除一下 就可以了

    本题使用的是第二种方法:最小公倍数*最大公约数=两数乘积

    具体的资料如下:https://blog.csdn.net/deepinc/article/details/79587878

    题目如下:  两仪剑法是武当派武功的高级功夫,且必须2个人配合使用威力才大。同时该剑法招数变化太快、太多。设武当弟子甲招数变化周期为M,武当弟子乙招数变化周期为N,两弟子同时使用该剑法,当2人恰好同时达到招数变化周期结束时,威力最大,此时能将邪教妖人置于死地。请你计算威力最大时,每人用了多少招(用t表示)?

  • 相关阅读:
    jvm垃圾收集算法
    RabbitMQ的6种工作模式详解及应用场景
    RabbitMQ 高级特性
    Linux回环IP地址lo的作用
    Mat中step的含义
    Python使用RSA加解密分段2048位
    golang发送SMTP邮件
    python2.7安装pip以及配置镜像
    golang代码静态扫描工具
    如何优雅构建一个很多参数的java对象
  • 原文地址:https://www.cnblogs.com/gti2baby/p/10442410.html
Copyright © 2020-2023  润新知