zoukankan      html  css  js  c++  java
  • Project Euler 30 Digit fifth powers


    题意:判断一个数 N 的每一位的5次方的和是否为其本身 ,求出所有满足条件的数的和

    思路:首先设这个数 N 为 n 位,可以简单的判断一下这个问题的上界 10 ^ n <= 9 ^ 5 × n,可以解得满足条件的最小解为 5 ,所以取 9 ^ 5 × 6 = 354294 作为枚举的上界


    /*************************************************************************
        > File Name: euler030.c
        > Author:    WArobot 
        > Blog:      http://www.cnblogs.com/WArobot/ 
        > Created Time: 2017年06月23日 星期五 13时31分53秒
     ************************************************************************/
    
    #include <stdio.h>
    #include <inttypes.h>
    #include <math.h>
    
    #define MAX_N 354294
    
    bool isNumber(int32_t n){
    	int32_t sum = 0 , x = n;
    	while(x){
    		sum += (int32_t)pow(x % 10 , 5);
    		x /= 10;
    	}
    	return sum == n;
    }
    int32_t main(){
    	int32_t sum = 0;
    	for(int32_t i = 2 ; i <= MAX_N ; i++){
    		if( isNumber(i) )	sum += i;
    	}
    	printf("%d
    ",sum);
    	return 0;
    }
  • 相关阅读:
    CPU 上下文切换是什么
    Linux性能优化实战
    JavaScript 概述
    最全前端资源汇总
    zabbix 源码安装
    单例
    php防止sql注入
    python 多进程读写文件
    python twisted异步将数据导入到数据库中
    scrapy-splash常用设置
  • 原文地址:https://www.cnblogs.com/WArobot/p/7069616.html
Copyright © 2011-2022 走看看