13:大整数的因子

13:大整数的因子

总时间限制: 
1000ms
 
内存限制: 
65536kB
描述

已知正整数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<cstdio>
 3 #include<string>
 4 #include<cstring>
 5 #include<algorithm>
 6 #include<cmath>
 7 using namespace std;
 8 char s[31];
 9 int main()
10 {
11     int yv=0,q=0;
12     scanf("%s",s);
13     int l=strlen(s);
14     for(int i=2;i<=9;i++)
15      {
16          yv=0; 
17          for(int j=0;j<l;j++)
18           {
19               yv=yv*10+(s[j]-'0');
20               yv=yv%i;
21           }
22           if(yv==0)
23            { 
24                cout<<i<<" ";
25                q=1;
26            }
27      }
28      if(q==0)
29       {
30           cout<<"none"; 
31       }
32      return 0;
33 }

 

  •  
posted @ 2017-03-21 21:51  ioioioioioio  阅读(487)  评论(0编辑  收藏  举报