Project Euler Problem 30
来源:互联网 发布:小嶋阳菜毕业知乎 编辑:程序博客网 时间:2024/05/18 15:29
Project Euler problem 30.
Surprisingly there are only three numbers that can be written as the sum of fourth powers of their digits:
1634 = 14 + 64 + 34 + 44
8208 = 84 + 24 + 04 + 84
9474 = 94 + 44 + 74 + 44
As 1 = 14 is not a sum it is not included.
The sum of these numbers is 1634 + 8208 + 9474 = 19316.
Find the sum of all the numbers that can be written as the sum of fifth powers of their digits.
result = 0### 2 digitsfor i in range (10, 100): firstNum = (i % 10) * (i % 10) * (i % 10) * (i % 10) * (i % 10) thirdNum = ((i - i % 10) / 10) * ((i - i % 10) / 10) * ((i - i % 10) / 10) * ((i - i % 10) / 10) * ((i - i % 10) / 10) if firstNum + secondNum == i: print i, "=", firstNum, "+", secondNum result += i### 3 digitsfor i in range (100, 1000): firstNum = (i % 10) * (i % 10) * (i % 10) * (i % 10) * (i % 10) secondNum = ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) thirdNum = ((i - i % 100) / 100) * ((i - i % 100) / 100) * ((i - i % 100) / 100) * ((i - i % 100) / 100) * ((i - i % 100) / 100) if firstNum + secondNum + thirdNum == i: print i, "=", firstNum, "+", secondNum, "+", thirdNum result += i### 4 digitsfor i in range (1000, 10000): firstNum = (i % 10) * (i % 10) * (i % 10) * (i % 10) * (i % 10) secondNum = ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) thirdNum = ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) fourthNum = ((i - i % 1000) / 1000) * ((i - i % 1000) / 1000) * ((i - i % 1000) / 1000) * ((i - i % 1000) / 1000) * ((i - i % 1000) / 1000) if firstNum + secondNum + thirdNum + fourthNum == i: print i, "=", firstNum, "+", secondNum, "+", thirdNum, "+", fourthNum result += i### 5 digitsfor i in range (10000, 100000): firstNum = (i % 10) * (i % 10) * (i % 10) * (i % 10) * (i % 10) secondNum = ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) thirdNum = ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) fourthNum = ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) fifthNum = ((i - i % 10000) / 10000) * ((i - i % 10000) / 10000) * ((i - i % 10000) / 10000) * ((i - i % 10000) / 10000) * ((i - i % 10000) / 10000) if firstNum + secondNum + thirdNum + fourthNum + fifthNum == i: print i, "=", firstNum, "+", secondNum, "+", thirdNum, "+", fourthNum, "+", fifthNum result += i### 6 digitsfor i in range (100000, 300000): firstNum = (i % 10) * (i % 10) * (i % 10) * (i % 10) * (i % 10) secondNum = ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) * ((i % 100 - i % 10) / 10) thirdNum = ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) * ((i % 1000 - i % 100) / 100) fourthNum = ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) * ((i % 10000 - i % 1000) / 1000) fifthNum = ((i % 100000 - i % 10000) / 10000) * ((i % 100000 - i % 10000) / 10000) * ((i % 100000 - i % 10000) / 10000) * ((i % 100000 - i % 10000) / 10000) * ((i % 100000 - i % 10000) / 10000) sixthNum = ((i - i % 100000) / 100000) * ((i - i % 100000) / 100000) * ((i - i % 100000) / 100000) * ((i - i % 100000) / 100000) * ((i - i % 100000) / 100000) if firstNum + secondNum + thirdNum + fourthNum + fifthNum + sixthNum == i: print i, "=", firstNum, "+", secondNum, "+", thirdNum, "+", fourthNum, "+", fifthNum, "+", sixthNum result += iprint result
0 0
- Project Euler Problem 30
- Project Euler - Problem 30
- Project Euler problem 30
- project euler problem 30
- Project Euler Problem 30
- Project euler problem 21 - 30
- Project Euler:Problem 30 Digit fifth powers
- Euler Project Problem 6
- project euler problem 11
- Project Euler Problem 81
- Project Euler Problem 60
- Project Euler Problem 59
- Project Euler Problem 58
- Project Euler Problem 57
- Project Euler Problem 16
- Project Euler Problem 31
- Project Euler Problem 32
- Project Euler Problem 14
- 设计模式之策略模式与状态模式的区别
- android面试题
- Android中BroadCastReceiver详解
- 【C语言】冒泡排序
- Mac10.10安装VMware Function7.0.1和Win8.1
- Project Euler Problem 30
- parse_str 与 http_build_query
- c基础+数据结构+线程+冒泡实现--航班查询系统
- 49:Anagrams【哈希】【字符串】
- Linux内核如何装载和启动一个可执行程序
- UIKit框架-高级控件Swift版本: 7.UIActionSheet方法/属性详解
- windows command shell download file
- Arduino 语法手册
- Get,Post请求中文乱码问题有效解决方法