zoukankan      html  css  js  c++  java
  • P1029 最大公约数和最小公倍数问题

    题目描述

    输入二个正整数x0,y0(2<=x0<100000,2<=y0<=1000000),求出满足下列条件的P,Q的个数
    条件:
    1.P,Q是正整数
    2.要求P,Q以x0为最大公约数,以y0为最小公倍数.
    试求:满足条件的所有可能的两个正整数的个数.

    输入输出格式

    输入格式:
    二个正整数x0,y0

    输出格式:
    一个数,表示求出满足条件的P,Q的个数

    输入输出样例

    输入样例#1:
    3 60
    输出样例#1:
    4

    说明

    P,Q有4种
    3 60 15 12 12 15 60 3

    我去,这种题目推式子都能推错
    我要记住这个题

    #include<iostream>
    #include<cmath>
    using namespace std;
    
    int m,n,ans;
    
    int gcd(int x,int y){
        if(!y){return x;}
        return gcd(y,x%y);
    }
    int main(){
        cin>>n>>m;
        for(int i=1;i<=sqrt(m);i++){
            if(i*n>=m/i)break;
            if(m%i==0&&gcd(i*n,m/i)==n){ans++;
            }
        }
        cout<<ans*2;
        return 0;
    }
    
  • 相关阅读:
    开启Spring Boot 之旅
    Java笔试面试练习题---集合
    Python
    Python
    Redis -下载与基本使用
    Git
    Vue全家桶-Vue-router&Vuex
    Es6
    Vue-前端
    Django基础及实战
  • 原文地址:https://www.cnblogs.com/qdscwyy/p/8094433.html
Copyright © 2011-2022 走看看