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

    【题目描述】

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

    【输入】

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

    【输出】

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

    【输入样例】

    30

    【输出样例】

    2 3 5 6


    
    

    一个高精度;

    本来还是想做一个递归的

    要求大整数的因子的话,

    其实就是高精除,

    开一个循环,

    把是因子的数给存到一个数组里。

     1 #include<iostream>
     2 #include<cstring>
     3 using namespace std;
     4 int main()
     5 {
     6     char c[50];
     7     int a[50],k[20],x,b=0;
     8     cin>>c;
     9     memset(a,0,(sizeof(a)));
    10     int lenc=strlen(c);
    11     for(int i=2;i<=9;i++)
    12     {
    13         for(int o=0;o<lenc;o++)
    14         a[o]=c[o]-'0';
    15         x=0;
    16         for(int j=0;j<lenc;j++)
    17         {
    18             a[j]+=x;
    19             x=(a[j]%i);
    20             x*=10;
    21             if(j==lenc-1&&x==0)
    22             {
    23                 b++;
    24                 k[b]=i;
    25             }
    26         }
    27     }
    28     if(b==0) cout<<"none";
    29     else 
    30     {
    31         for(int i=1;i<=b;i++)
    32         cout<<k[i]<<" ";
    33     }
    34     return 0;
    35 }

    坚持打卡O(∩_∩)O~

    看不见我看不见我看不见我
  • 相关阅读:
    安全模式下卸载windows installer打包的软件(转)
    OAF页面集成条形码或者二维码
    记一次客户生产环境供应商门户服务器无法访问
    QML显示圆形图片
    QML加载gif
    QML之信号与槽
    QML访问C++类内部
    QML使用C++对象
    C++条件变量
    C/C++程序所占用内存区域
  • 原文地址:https://www.cnblogs.com/sxy2004/p/11470601.html
Copyright © 2011-2022 走看看