大整数因子
Posted blairgrowing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大整数因子相关的知识,希望对你有一定的参考价值。
已知正整数 kk 满足 2 le k le 92≤k≤9,现给出长度最大为 3030 位的十进制非负整数 cc,求所有能整除 cc 的 kk。
输入格式
一个非负整数 cc,cc 的位数 le 30≤30。
输出格式
若存在满足 c \% k = 0c%k=0 的 kk,从小到大输出所有这样的 kk,相邻两个数之间用单个空格隔开;若没有这样的 kk,则输出"none"
。
样例输入
30
样例输出
2 3 5 6
1 #include <iostream> 2 #include<cstring> 3 using namespace std; 4 5 6 int main(){ 7 char a[32];//存被除数 8 bool flag=false; 9 int t,len; 10 cin>>a; 11 len = strlen(a); 12 for(int i=2;i<=9;i++){ 13 t = 0; 14 for(int j =0;j<len;j++){ 15 if(a[j]-‘0‘+t>=i){ 16 //加上高一位留下的数,要乘10 17 //够除的情况,取余 18 t=((a[j]-‘0‘+t)%i)*10; 19 }else{ 20 //不够除的情况 21 t=(a[j]-‘0‘)*10; 22 } 23 } 24 if(t==0){ 25 cout<<i<<" "; 26 flag=1; 27 } 28 } 29 if(flag==0){ 30 cout<<"none"<<endl; 31 } 32 }
以上是关于大整数因子的主要内容,如果未能解决你的问题,请参考以下文章