`
ryan.liu
  • 浏览: 135815 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

用Python解答 ProjectEuler问题(4)

阅读更多
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问题答案

    标题 "Projecteuler_python:Projecteuler中的Python问题答案" 指的是一个项目,其中包含使用Python编程语言解决Project Euler网站上的数学和计算机科学挑战问题的答案。Project Euler是一个非常受欢迎的在线平台,它...

    ProjectEuler 解题表格

    通过分析和学习“ProjectEuler解题表格”,不仅可以锻炼编程技能,还能了解到如何使用不同工具来优化解决问题的过程。对于想要提升自己在数学和编程领域能力的人来说,这是一个非常有价值的学习资源。

    Project Euler 第22题

    【标题】"Project Euler 第22题"是一个著名的编程挑战,源自Project Euler网站,这是一个鼓励人们通过编程解决数学和计算问题的在线平台。这道题目通常涉及到字符串处理、排序以及数学计算,旨在锻炼编程者的问题...

    python-project-euler:我在python中解决了Euler项目的问题

    "python-project-euler"显然是一个用户在Python中尝试解答Project Euler问题的项目。 这个项目的重点在于利用Python语言的灵活性和高效性来解决复杂的计算问题。Python是一种高级编程语言,它的语法简洁,易于学习...

    Project-Euler:我使用Python解决的一些Project Euler问题

    在本项目中,作者使用Python语言解答了这些挑战。Python是一种高级编程语言,以其简洁的语法和强大的功能而受到广大程序员的喜爱,特别适合于快速原型开发和解决算法问题。 Python在解决Project Euler问题时的优势...

    project_euler_python:Python中解决Project Euler的问题

    以Python语言来解Project Euler问题。 Project Euler: 针对数学和程式爱好者,设计了一系列的问题,至今已有五百多道,供大家挑战,每一题都要求应在1分钟内计算出答案。我使用硬体Raspberry Pi 2与软体Raspbian,...

    project-euler:projecteuler.net问题的解决方案

    这个压缩包“project-euler-master”很可能是包含了一个使用 Python 解答 Project Euler 问题的代码仓库。以下是关于 Project Euler 和 Python 解决方案的一些关键知识点: 1. **Project Euler 介绍**: - Project...

    project-euler:我的功能性JavaScriptPython方法来回答Project Euler问题

    在解答Project Euler问题时,功能性编程的优势在于: 1. **可读性**:通过将复杂问题分解为一系列简单函数,代码更易理解和维护。 2. **并行处理**:由于纯函数没有副作用,它们可以安全地并行执行,提高性能。 3. ...

    project-euler:Project Euler(http:projecteuler.net)解决难题的方法

    本项目主要关注的是使用Python语言来解答Project Euler的问题。 在探索Project Euler的挑战时,Python成为了一个非常受欢迎的选择,因为它的语法简洁,易于学习,并且拥有强大的库支持,适用于各种计算任务。以下是...

    ProjectEuler:我对Euler项目问题​​的所有解决方案

    【标题】"ProjectEuler:我对Euler项目问题的所有解决方案" 该项目主要包含了对Project Euler问题的解答,这是一个著名的在线数学和计算机科学问题集,旨在挑战编程技能和逻辑思维能力。Project Euler的问题通常...

    Numeracy-Algorithms-projecteuler.net-Solutions-:包含我对projecteuler.net上算法挑战的解决方案

    标题中的“Numeracy-Algorithms-projecteuler.net-Solutions-”显然指的是一个项目,该项目专注于解决来自Project Euler网站上的算法挑战。Project Euler是一个知名的在线平台,它提供了一系列的数学和计算机科学...

    project-euler:Project Euler ipython notebook 解决方案

    这个压缩包“project-euler-master”似乎包含了一个IPython Notebook的解决方案集,用于解答Project Euler的问题。IPython Notebook(现称为Jupyter Notebook)是一种交互式计算环境,它允许用户结合代码、文本、...

    project-euler-solutions:我想出的所有Project Euler解决方案

    这个名为"project-euler-solutions"的项目,显然是作者为解答Project Euler中的问题而创建的个人解决方案集,主要使用Python语言。 Python作为一门易学且功能强大的编程语言,被广大程序员所喜爱,尤其适合解决这类...

    Project-Euler-Solutions:解决项目Euler问题的Python解决方案

    这个名为"Project-Euler-Solutions"的资源是针对这些问题的Python解答集,由一位热心的程序员创建。下面将详细讨论这个项目中涉及的Python编程知识点。 1. **基础语法和数据类型**: - Python的语法简洁明了,项目...

    Project-Euler

    总的来说,这个压缩包文件可能是一个全面的资源,包含了使用 Python 解决 Project Euler 问题的实践案例,同时也展示了如何利用 Fortran 进行高性能计算。通过学习和研究这些代码,你可以深入理解 Python 语言、算法...

    project_euler

    "project_euler" 是一个专为解决 Project Euler 问题而设计的资源库,它主要使用 Python 编程语言。Project Euler 是一个著名的在线数学和计算机科学挑战平台,它提出了一系列富有挑战性的问题,旨在鼓励学习者应用...

    Euler-Project-With-Python

    【描述】"Euler-Project-With-Python" 描述了这样一个实践过程:用 Python 编程语言去解答欧拉项目中的题目。Python 是一种广泛用于数据分析、机器学习和通用编程的高级编程语言,因其简洁明了的语法而受到程序员...

    Project-Euler-解决方案

    在这个项目中,开发者可能分别使用Scala、C++、Python3和Python2实现了Project Euler的所有问题。每个问题的解决方案可能包括以下部分: - **问题描述**:简述Project Euler问题的具体内容。 - **算法思路**:解释...

    Project-Euler:我对Euler项目网站问题的解决方案的资源库

    在"Project-Euler:我对Euler项目网站问题的解决方案的资源库"中,你将找到作者对于这些问题的解答和思路。 这个资源库可能包含了多种编程语言的实现,例如Python、Java、C++或JavaScript等,每种语言的解决方案都...

    project-euler:项目欧拉解决方案

    在"project-euler-master"这个压缩包中,我们可以推测它包含了一个完整的Project Euler问题解决方案的仓库,很可能是用Python语言编写的。Python因其简洁的语法和强大的库支持,成为了许多Project Euler参与者首选的...

Global site tag (gtag.js) - Google Analytics