| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 317 人关注过本帖
标题:求阿姆斯状数,请教怎样减少用时!具体请看内容
只看楼主 加入收藏
灵夕920329
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2012-12-2
结帖率:50%
收藏
 问题点数:0 回复次数:1 
求阿姆斯状数,请教怎样减少用时!具体请看内容
关于阿姆斯状数问题,我已经写出了如何和运算,但是程式运行时间过长,希望能减少时间。
求程式码,谢谢!
以下是我的程式码!
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    char str[256];
    int x,y,i,j,t,n,sum;   
    cin>>x>>y;
    if(x>y)
    { t=y ; y=x ; x=t ; }
    for(i=x ; i<=y ; i++)
    {
        if(i/10 == 0)
        {
            cout<<i<<" ";
        }
        else
        {
            n = 1; sum = 0;
            sprintf(str,"%d",i);        
            for(j=i ; j/10!=0 ;
j=j/10)
                n ++;
            for(j=0 ; j<n ; j++)
            {
                sum += (int)pow((str[j]-'0')*1.0,n*1.0);
            }
            if(sum == i)
            {
                cout<<sum<<" ";//能否帮忙将输出的最后一个空格键删除?
            }
        }
    }
    return 0;
}
搜索更多相关主题的帖子: 时间 希望 include 如何 
2012-12-17 19:07
灵夕920329
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2012-12-2
收藏
得分:0 
对了,提交的时候运行时间是1s ,需测试的数为10到1000000!
2012-12-17 19:08
快速回复:求阿姆斯状数,请教怎样减少用时!具体请看内容
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015010 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved