zoukankan      html  css  js  c++  java
  • CF983A Finite or not?(数学)

    题意:给出分母,分子和进制,要求判断该数是否为有限小数。

    Solution

    表示并不知道怎么判断。

    度娘:“一个分数在最简分数的情况下,如果它的分母只含有2和5两个质因数,这个分数就能化成有限小数.”。

    感觉这个和进制有些关系,因为2和5恰好是进制10质因数分解后的结果。

    那么问题变成了判断分母所含的质因数是否都为进制的质因数。

    用辗转相处法求解。

    注意最开始要讲分式化简(直接化简应该没有问题)。

    Code

    #include<iostream>
    #include<cstdio>
    using namespace std;
    typedef long long ll;
    ll p,q,b;
    int n,flag;
    ll gcd(ll a,ll b){return b?gcd(b,a%b):a;}
    int main(){
        scanf("%d",&n);
        while(n--){
            scanf("%lld%lld%lld",&p,&q,&b);flag=1;
            q/=gcd(q,p);
            while(q!=1){
                ll x=gcd(q,b);
                q/=x;b=x;
                if(q!=1&&b==1){
                    printf("Infinite
    ");
                    flag=0;
                    break;
                }
            }
            if(flag)printf("Finite
    ");
        }
        return 0;
    }
  • 相关阅读:
    极大/小搜索,alpha/beta剪枝
    消息系统
    渲染主线程都在干什么
    好玩的虚拟CPU执行代码
    好玩的隐藏属性
    好玩的对象存储
    透视投影矩阵
    绕任意轴旋转
    视图变换
    正交投影矩阵
  • 原文地址:https://www.cnblogs.com/ZH-comld/p/9678683.html
Copyright © 2011-2022 走看看