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
    枚举+求和,代码:
    #include<iostream>
    #include<string>
    #include<cstring>
    using namespace std;
    int pd(string a,int x)
    {
    	int len=a.size(); 
    	int i;
    	int t=0;
    	for(i=0;i<len;i++)
    	{
    	   t*=10;
    	   t+=a[i]-'0';//找因子 
    	   if(t>=x) t=t%x;//求余结果 
    	}
    	return t;//反回
    }
    int main()
    {
        string a;
      	cin>>a;
      	int sum=0;
      	bool hh=false;//判断是否输出none 
      	for(int i=2;i<=9;i++)
      	{
        	if(pd(a,i)==0)
        	{
        		hh=true;
        		if(sum==0)//处理空格问题 
        		{
        			cout<<i;
        			sum=1;
    			}
        		else cout<<" "<<i;
    		}
      	}
      	if(hh==false)
      	{
      		cout<<"none";
    	}
     	return 0;
    }
    

      

  • 相关阅读:
    session的一个问题
    (Struts)ActionForm类及表单数据验证
    javaee添加验证码
    struts的上传和下载
    logic标签用法
    jstl标签用法
    bean标签
    /WEB-INF/userManage.jsp(31,82) Unterminated ${ tag
    自定义EL
    jstl
  • 原文地址:https://www.cnblogs.com/dai-jia-ye/p/9284282.html
Copyright © 2011-2022 走看看