zoukankan      html  css  js  c++  java
  • 1171:大整数的因子

    传送门:http://ybt.ssoier.cn:8088/problem_show.php?pid=1171

    【题目描述】

    已知正整数k满足2≤k≤9,现给出长度最大为30位的十进制非负整数c,求所有能整除c的k。

    【输入】

    一个非负整数c,c的位数≤30。

    【输出】

    若存在满足 c%k == 0 的k,从小到大输出所有这样的k,相邻两个数之间用单个空格隔开;若没有这样的k,则输出"none"。

    【输入样例】

    30

    【输出样例】

    2 3 5 6




    虽然可以直接根据关系求出但我还是用高精除一下吧


    #include<iostream>
    #include<cstring>
    #define N 40
    using namespace std;
    string a;
    int as[N],lena,yu,ans[10],tot=0;
    int main(){
        cin>>a;
        lena=a.size();
        for(int i=0;i<lena;i++)as[i]=a[i]-'0';
        for(int k=2;k<=9;k++){
            yu=0;
            for(int i=0;i<lena;i++)
                yu=(yu*10+as[i])%k;
            if(yu==0)ans[++tot]=k;
        }
        if(tot==0){
            cout<<"none
    ";
            return 0;
        }
        for(int i=1;i<=tot;i++)
        {
            if(i!=1)cout<<" ";
            cout<<ans[i];
        }
        cout<<endl;
    }
     
  • 相关阅读:
    防火墙实践
    提高工作效率的小技巧
    网络系统参数配置
    linux 文件截取
    python (1) 还不是大全的小问题
    iptables 命令记录
    网络常用端口
    HTTP时间指标
    错误集锦
    access数据库调用
  • 原文地址:https://www.cnblogs.com/jzxnl/p/11031107.html
Copyright © 2011-2022 走看看