E004
A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 99.
Find the largest palindrome made from the product of two 3-digit numbers.
水仙花数是从左向右和从右向左读都相同的自然数。求两个三位数的乘积中最大的水仙花数。
def problem4():
min, max = 100, 999
def isPalindromic(num):
if num<=10:
return False
digits = list(str(num))
revdigs = list(str(num))
revdigs.reverse()
return digits==revdigs
x = y = avg = max
while avg>=min:
num = x*y
if isPalindromic(num):
return x,y,num
elif x<=min or y>=max:
avg -= 0.5
x = int(avg)
y = int(avg+0.5)
else:
x -= 1
y += 1
if __name__=='__main__':
print str(problem4())
考虑两个三位数乘积最大的是 999x999, (平均数999)
其次是 998x999, (平均数998.5)
再次是 998x998, 997x999, (平均数998)
然后是 997x998, 996x999, (平均数997.5)
......
分享到:
相关推荐
标题 "Projecteuler_python:Projecteuler中的Python问题答案" 指的是一个项目,其中包含使用Python编程语言解决Project Euler网站上的数学和计算机科学挑战问题的答案。Project Euler是一个非常受欢迎的在线平台,它...
通过分析和学习“ProjectEuler解题表格”,不仅可以锻炼编程技能,还能了解到如何使用不同工具来优化解决问题的过程。对于想要提升自己在数学和编程领域能力的人来说,这是一个非常有价值的学习资源。
【标题】"Project Euler 第22题"是一个著名的编程挑战,源自Project Euler网站,这是一个鼓励人们通过编程解决数学和计算问题的在线平台。这道题目通常涉及到字符串处理、排序以及数学计算,旨在锻炼编程者的问题...
"python-project-euler"显然是一个用户在Python中尝试解答Project Euler问题的项目。 这个项目的重点在于利用Python语言的灵活性和高效性来解决复杂的计算问题。Python是一种高级编程语言,它的语法简洁,易于学习...
在本项目中,作者使用Python语言解答了这些挑战。Python是一种高级编程语言,以其简洁的语法和强大的功能而受到广大程序员的喜爱,特别适合于快速原型开发和解决算法问题。 Python在解决Project Euler问题时的优势...
以Python语言来解Project Euler问题。 Project Euler: 针对数学和程式爱好者,设计了一系列的问题,至今已有五百多道,供大家挑战,每一题都要求应在1分钟内计算出答案。我使用硬体Raspberry Pi 2与软体Raspbian,...
这个压缩包“project-euler-master”很可能是包含了一个使用 Python 解答 Project Euler 问题的代码仓库。以下是关于 Project Euler 和 Python 解决方案的一些关键知识点: 1. **Project Euler 介绍**: - Project...
在解答Project Euler问题时,功能性编程的优势在于: 1. **可读性**:通过将复杂问题分解为一系列简单函数,代码更易理解和维护。 2. **并行处理**:由于纯函数没有副作用,它们可以安全地并行执行,提高性能。 3. ...
本项目主要关注的是使用Python语言来解答Project Euler的问题。 在探索Project Euler的挑战时,Python成为了一个非常受欢迎的选择,因为它的语法简洁,易于学习,并且拥有强大的库支持,适用于各种计算任务。以下是...
【标题】"ProjectEuler:我对Euler项目问题的所有解决方案" 该项目主要包含了对Project Euler问题的解答,这是一个著名的在线数学和计算机科学问题集,旨在挑战编程技能和逻辑思维能力。Project Euler的问题通常...
标题中的“Numeracy-Algorithms-projecteuler.net-Solutions-”显然指的是一个项目,该项目专注于解决来自Project Euler网站上的算法挑战。Project Euler是一个知名的在线平台,它提供了一系列的数学和计算机科学...
这个压缩包“project-euler-master”似乎包含了一个IPython Notebook的解决方案集,用于解答Project Euler的问题。IPython Notebook(现称为Jupyter Notebook)是一种交互式计算环境,它允许用户结合代码、文本、...
这个名为"project-euler-solutions"的项目,显然是作者为解答Project Euler中的问题而创建的个人解决方案集,主要使用Python语言。 Python作为一门易学且功能强大的编程语言,被广大程序员所喜爱,尤其适合解决这类...
这个名为"Project-Euler-Solutions"的资源是针对这些问题的Python解答集,由一位热心的程序员创建。下面将详细讨论这个项目中涉及的Python编程知识点。 1. **基础语法和数据类型**: - Python的语法简洁明了,项目...
总的来说,这个压缩包文件可能是一个全面的资源,包含了使用 Python 解决 Project Euler 问题的实践案例,同时也展示了如何利用 Fortran 进行高性能计算。通过学习和研究这些代码,你可以深入理解 Python 语言、算法...
"project_euler" 是一个专为解决 Project Euler 问题而设计的资源库,它主要使用 Python 编程语言。Project Euler 是一个著名的在线数学和计算机科学挑战平台,它提出了一系列富有挑战性的问题,旨在鼓励学习者应用...
【描述】"Euler-Project-With-Python" 描述了这样一个实践过程:用 Python 编程语言去解答欧拉项目中的题目。Python 是一种广泛用于数据分析、机器学习和通用编程的高级编程语言,因其简洁明了的语法而受到程序员...
在这个项目中,开发者可能分别使用Scala、C++、Python3和Python2实现了Project Euler的所有问题。每个问题的解决方案可能包括以下部分: - **问题描述**:简述Project Euler问题的具体内容。 - **算法思路**:解释...
在"Project-Euler:我对Euler项目网站问题的解决方案的资源库"中,你将找到作者对于这些问题的解答和思路。 这个资源库可能包含了多种编程语言的实现,例如Python、Java、C++或JavaScript等,每种语言的解决方案都...
在"project-euler-master"这个压缩包中,我们可以推测它包含了一个完整的Project Euler问题解决方案的仓库,很可能是用Python语言编写的。Python因其简洁的语法和强大的库支持,成为了许多Project Euler参与者首选的...