Project Euler解题汇总 061 ~ 070

[url=http://projecteuler.net/index.php?section=problems&id=61]问题61[/url]:[color=orange]Find the sum of the only set of six 4-digit figurate numbers with a cyclic property.[/color]
object Euler061 extends Application {
val fun = Array( (n:Int) => n*(n+1)/2,
(n:Int) => n*n,
(n:Int) => n*(3*n-1)/2,
(n:Int) => n*(2*n-1),
(n:Int) => n*(5*n-3)/2,
(n:Int) => n*(3*n-2)
)
def getNum(i:Int):Seq[(Int,Int)] = {
val st = Stream.from(1).map{ n => (fun(i)(n),i) }
st.dropWhile{ _._1 < 1000 }.takeWhile{ _._1 < 10000 }
}

val num = (0 until 6).flatMap(getNum).toArray
val lst = new Array[List[Int]](num.size)
for(i <- 0 until num.size){
val tail = num(i)._1%100
val idx = num(i)._2
var xs:List[Int] = Nil
for(j <- 0 until num.size){
val it = num(j)
if(idx != it._2 && tail == it._1/100) xs = j::xs
}
lst(i) = xs
}

def sum(n:Int):Int = {
def sum0(t:Int,d:Int,xs:List[Int]):Int = {
if(d == 6) return if(t==n) 0 else -1
else{
if(xs.contains(num(t)._2)) return -1
val ys = num(t)._2::xs
if(lst(t).exists{ sum0(_,d+1,ys) >=0 }){
num(t)._1 + lst(t).map{ sum0(_,d+1,ys) }.find{ _ >=0 }.get
}
else -1
}
}
sum0(n,0,Nil)
}

println(Stream.from(0).map(sum).find{ _>=0 }.get)
}



[url=http://projecteuler.net/index.php?section=problems&id=62]问题62[/url]:[color=orange]Find the smallest cube for which exactly five permutations of its digits are cube.[/color]
import java.util.Arrays.sort
import java.lang.Math.cbrt

object Euler062 extends Application {
val MAX = 5
var res = 345L
var cnt = 0
do{
res += 1
val cube = res*res*res
val list = cube.toString.toArray
sort(list)
val uper = cbrt(list.foldRight(0L){ (c,s) => 10*s+c-'0' }).toLong
cnt = 1
var n = res + 1
while(n <= uper){
val array = (n*n*n).toString.toArray
sort(array)
if(list sameElements array) cnt += 1
n += 1
}
}while(cnt != MAX)
println(res*res*res)
}



[url=http://projecteuler.net/index.php?section=problems&id=63]问题63[/url]:[color=orange]How many n-digit positive integers exist which are also an nth power?[/color]
import scala.Math._

object Euler063 extends Application {
val MAX = (log(10)/(log(10)-log(9))).intValue
var cnt = 0
for(p <- 1 to MAX;n <- 1 to 9){
val b = n:BigInt
if(b.pow(p).toString.size == p) cnt += 1
}
println(cnt)
}



[url=http://projecteuler.net/index.php?section=problems&id=64]问题64[/url]:[color=orange]How many continued fractions for N ≤ 10000 have an odd period?[/color]
import eastsun.math.Util._
object Euler064 extends Application {

val res = 1.to(10000).filter{ continuedFractionOfSqrt(_,null) % 2 ==1 }.length
println(res)
}



[url=http://projecteuler.net/index.php?section=problems&id=65]问题65[/url]:[color=orange]
Find the sum of digits in the numerator of the 100th convergent of the continued fraction for e.[/color]
object Euler065 extends Application {
def a(n:Int) =
if(n == 1) 2
else if(n%3 == 0) 2*n/3
else 1

def b(n:Int):(BigInt,BigInt) = {
var num:BigInt = a(n)
var den:BigInt = 1
for(i <- 1 until n){
var t = num*a(n-i) + den
den = num
num = t
}
(num,den)
}

var (x,y) = b(100)
var res = x.toString.map{ _-'0' }.foldLeft(0){ _+_ }
println(res)
}



[url=http://projecteuler.net/index.php?section=problems&id=66]问题66[/url]:[color=orange]
Investigate the Diophantine equation x^2 − D*y^2 = 1.[/color]
import eastsun.math.Util._
object Euler066 extends Application {
val buf = new Array[Int](1000)
var (res,max,d) = (2,3:BigInt,1)
while(d <= 1000){
val pd = continuedFractionOfSqrt(d,buf)
if(pd > 0){
val sq = Math.sqrt(d)
var (x0,y0) = (sq:BigInt,1:BigInt)
var (x1,y1) = ((buf(0)*sq+1):BigInt,buf(0):BigInt)
val cnt = if(pd%2 == 1) 2*pd-1 else pd-1
var idx = 1
while(idx < cnt){
var t = x1
var a = buf(idx%pd)
x1 = x1*a + x0
x0 = t
t = y1
y1 = y1*a + y0
y0 = t
idx += 1
}
if(x1 > max){
max = x1
res = d
}
}
d += 1
}
println(res)
}



[url=http://projecteuler.net/index.php?section=problems&id=67]问题67[/url]:[color=orange]
Using an efficient algorithm find the maximal sum in the triangle?[/color]
import scala.io.Source._

object Euler067 extends Application {
val num = fromFile("triangle.txt").getLines.map{ line =>
line.split("\\s+").map{ _.toInt }
}.toList.toArray
val path = new Array[Array[Int]](num.length)

for(i <- 0 until path.length) path(i) = new Array[Int](i+1)

for(i <- 0 until path.length) path(num.length-1)(i) = num(num.length-1)(i)

for{row <- (path.length - 2) to 0 by -1;
col <- 0 to row
} path(row)(col) = num(row)(col) +path(row+1)(col).max(path(row+1)(col+1))

println(path(0)(0))
}



[url=http://projecteuler.net/index.php?section=problems&id=68]问题68[/url]:[color=orange]What is the maximum 16-digit string for a "magic" 5-gon ring?[/color]
import eastsun.math.Util._

object Euler068 extends Application {
val its = Array.range(1,10)
val buf = new Array[Int](10)
buf(0) = 10
do{
Array.copy(its,0,buf,1,9)
val sum = buf(8)+buf(9)+buf(1)
val tag = 0.until(8,2).forall{i => buf(i)+buf(i+1)+buf(i+3) == sum}
if(tag){
val idx = 0.until(10,2).foldLeft(0){ (i,j) => if(buf(i)<buf(j)) i else j }
val num = idx.until(idx+10,2).map{ i =>
buf(i%10)+""+buf((i+1)%10)+""+buf((i+3)%10)
}.mkString("")
println(num)
}
}while(nextPermutation(its))
}



[url=http://projecteuler.net/index.php?section=problems&id=69]问题69[/url]:[color=orange]Find the value of n ≤ 1,000,000 for which n/φ(n) is a maximum.[/color]
import eastsun.math.Util._
object Euler069 extends Application {
var res = getPrimes(1000).foldLeft(1){(s,p) => if(s*p <= 1000000) s*p else s}
println(res)
}



[url=http://projecteuler.net/index.php?section=problems&id=70]问题70[/url]:[color=orange]Investigate values of n for which φ(n) is a permutation of n.[/color]
import eastsun.math.Util._
import java.util.Arrays.binarySearch
import scala.util.Sorting._

object Euler070 extends Application {
val MAX = 10000000
val primes = getPrimes(MAX)
def isPrime(n:Int) = binarySearch(primes,n) >= 0
val phi = new Array[Int](MAX)
phi(1) = 1
var n = 2
var rate = 0.0
var res = 0
while(n < MAX){
if(isPrime(n)) phi(n) = n - 1
else{
var idx = 0
while(n%primes(idx) != 0) idx += 1
val p = primes(idx)
val s = n/p
phi(n) = if(s%p == 0) phi(s)*p else phi(s)*(p-1)
}
if(phi(n) > n*rate){
val pa = phi(n).toString.toArray
val pn = n.toString.toArray
quickSort(pa)
quickSort(pn)
if(pa sameElements pn){
rate = phi(n).floatValue/n
res = n
}
}
n += 1
}
println(res)
}
Project Euler(欧拉计划)解题报告【不断更新】 先写在前头,里面所有的题大都是我的个人解题报告,由于我的能力,不可避免的有许多不足,如果有解题有错误或者遗漏,还望指出,谢谢。 先简单介绍下 ProjectEulerProject EulerProjectEuler Project Euler欧拉计划(Project Euler)是一系列有挑战性的数学与计算机编程题;要解开它们,需要的不止是数学知识:尽管数学能够帮助你找到一些优雅而有效的方法,... 阅读详情

相关推荐

echarts实现折线图上下限区域展示

效果图: 画这种区域中主要是利用了series的两个属性: 思路:上下限都画上区域,然后折线利用图形透明度隐藏,给上区域加上颜色,给下区域加上白色(echarts图背景是啥色,就加啥色) lineStyle: { opacity: 0 }, // 图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形 areaStyle: { color: 'rgba(0,122,255,0.1)' }, // 填充的颜色 我的需求是最大天数、最小天数、

小太阳的博客 1万+

Project Euler Problem 68 (C++和Python代码实现和解析)***

Problem 68 : Magic 5-gon ring Consider the following “magic” 3-gon ring, filled with the numbers 1 to 6, and each line adding to nine. Working clockwise, and starting from the group of three with the...

jiafengfu的优快云博客 433

EEGNet 网络代码解析与实战复现指南

本文详细解析了EEGNet这一轻量级卷积神经网络的结构与设计思想,重点阐述了其利用深度可分离卷积高效处理脑电信号的原理。文章提供了基于PyTorch的完整代码复现指南,包括网络搭建、数据模拟、训练调试及关键参数解析,旨在帮助读者掌握EEGNet的代码复现技巧,并将其应用于脑机接口等实际场景。

honey的博客 536

project euler 68

Problem 68 Magic 5-gon ring Consider the following “magic” 3-gon ring, filled with the numbers 1 to 6, and each line adding to nine. Working clockwise, and starting from the group of

whuawell的博客 396

从理论到实践:利用FilterSolutions高效设计7阶椭圆低通滤波器

本文详细介绍了如何利用FilterSolutions软件高效设计7阶椭圆低通滤波器。文章从理论入手,对比了巴特沃斯、切比雪夫等经典滤波器特性,阐述了在要求高衰减陡度(如62dB抑制)和严格通带波纹(0.2dB)时,椭圆滤波器是最优选择。通过分步实战教程,指导读者完成从软件参数设置、性能验证到实际电路布局与调试的全过程,助力射频与高速数字信号处理工程师将理论转化为可靠设计。

jupi8的博客 561

DCN交换机通过boot模式升级

LIC导入成功后,输入enable进入特权模式,把网线接到通讯网口上,配置好对应interface vlan地址,在enable模式用 copy tftp://x.x.x.x/xxxxxx_nos.img nos.img待提示write ok时,reload设备完成升级。交换机启动后,在显示以下信息时输入“Ctrl+B”,一定得是手动按“Ctrl+B”进入的boot模式才能正常升级。升级交换机成功,在BootROM模式下,执行命令run或reboot,回到CLI配置界面。# 交换机通过boot模式升级。

m0_72501865的博客 947

Project Euler problem 68

题意需要注意的一点就是, 序列是从外层最小的那个位置顺时针来的。

水 1006

AWSIM模拟器 新增多相机

本文介绍了基于Unity6引擎对AWSIM自动驾驶模拟器的优化方案,主要针对多相机系统的扩展实现。作者通过修改EgoVehicle.cs和AutowareSimulationDemo.cs核心代码,将原单相机系统升级为5相机配置。关键技术点包括:1)使用List容器管理多个CameraSensor组件;2)完善相机初始化流程;3)配置5个相机UI显示窗口;4)修改ROS话题设置。优化后的系统可支持BEVFusion等多传感器融合算法的测试验证,为Autoware.universe 0.45.0及以上版本提供

W805698955的博客 831

projecteuler No.68 Magic 5-gon ring

原文题目链接: http://projecteuler.net/problem=68 翻译题目链接: http://pe.spiritzhang.com/index.php/2011-05-11-09-44-54/69-6816 题目分析: 粗略来看,题目是属于有限种情况的筛选,而情况数比较少,只有10!=3628800种,于是考虑直接枚举排除。

1056

YOLOv8-Pose 姿态识别 RK3588 实战:从模型训练到 RKNN 部署,精度与推理速度双提升

本教程从YOLOv8-pose模型的姿态识别训练,到RK3588的边缘量化部署,为你打造了一套“高精度+高实时性+低成本”的人体姿态分析解决方案。无论是健身动作纠正、智能安防行为检测,还是工业人员姿态监控,这套技术都能直接复用——你只需替换数据集与业务逻辑,即可快速落地专属的边缘AI姿态识别系统。如果你在实践中遇到任何卡点,欢迎随时交流。记住,人体姿态识别的价值在于“关键点准、推理快、部署易”,而这三者的平衡,正是你通过本教程能掌握的核心能力。

FJN110的博客 366

openharmony之启动恢复子系统详解

需求: 添加一个名为my_service的自定义服务步骤1: 创建服务配置],],"env": [步骤2: 添加到主配置],"jobs": ["cmds": [步骤3: 验证配置# ✅ 检查配置格式 jq . /system/etc/init/my_service.cfg # 🔄 重新加载配置 begetctl reload # 📊 验证服务状态 begetctl dump_service my_serviceOpenHarmony init进程的完整生命周期。🔄 三阶段启动模型⚙️ 配置体系。

m0_67505153的博客 603

欧拉计划(project euler)最详细中文题解

欧拉计划是一个在线解题网站,题目以各类数学问题为主,通常需要结合一定的数学与编程知识,写出适当的程序求解问题(详细介绍可以参见我的文章)。相比于力扣等刷题网站,欧拉计划上的题目有着更丰富的知识背景,在解答题目的过程中常能学习新的数学与算法知识,享受解题愉悦的同时也能颇有收获。 在我的解题过程中,我尽量追求对每道题给出最优的解法,然后写文章把我的思路与代码记录下来。在每篇文章中,我首先将题目翻译成了中文,然后给出了我的解题思路和对应的代码,代码可以在这个仓库中找到。希望这些文章能够为大家带来启发,发现更好的

metaquant的博客 6998

【数据集】中国广泛时空水质数据集(1980-2022)

简介中国广泛时空水质数据集(1980-2022)

WW、forever的博客 3997

我的欧拉工程之路简介

欧拉工程是一个在线解题网站。目前有563题,由简入难。每个题目都可以用计算机在1分钟内出结果,不过这句话是写在03年左右的,现在的电脑不需要那么久。如果你在解题过程中发现你的程序跑了半个小时,那么你就要考虑你的算法的效率问题了。欧拉工程是一个很考验算法的网站,如果你想锻炼你的算法能力,那么可以点击上一段中的蓝字超链接跳转。

Stone Chen的博客 1793

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

微软技术日报 11-09:.NET 8 与 9 明日同时停止支持,注册表编辑器出了 WinUI 3 版

今天这四条消息的共同点是收口。.NET 8 和 9 的支持期到点,注册表编辑器的新界面只放在仓库里给人看,GitHub 把一类危险触发器按住默认,微软在安全报告里把防线从地址黑名单挪到行为。收口并不等于关门。.NET 10 还在支持期里,被按住的触发器可以用策略按文件放回来,实验室里的样例随时可能变成产品。区别在于这些动作要有人签字,不再是默认开着。如果今天只做一件事,去看一眼构建机上的 .NET 版本。明天之后,8 和 9 的漏洞补丁不会再来了。

海盗Sharp的博客 390

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

微软技术周报 11-02~11-09:VS Code 混装 Claude 与 Codex、EF Core 11 静默改行为、.NET 11 倒计时

11 月 6 日,Power Platform 通过消息中心通知管理员,Copilot Studio、Power Automate 和 Power Apps 里所有跑在 Anthropic Claude、xAI Grok 以及旧版 GPT 上的 prompt,12 月 2 日自动迁移到 GPT-6 系列,档位价格不变,模型选择收窄到一条产品线。效果是这样的:让 Claude 评审一个 Copilot chat 写出的方案,或者把同样的任务交给 Codex,两边并排跑在同一个会话里。更要紧的是下周的时间线。

海盗Sharp的博客 992

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

一款基于 .NET 开源、免费的数据库自治诊断平台

DBPilot。它解决的是 DBA 日常工作中最耗时的痛点:性能趋势分析、Top SQL 定位、阻塞与死锁排查,原本散落在多个工具和脚本里的活,现在一个 Web 控制台全搞定。DBPilot 是一个自托管的数据库自治诊断平台。它持续采集实例的性能数据,在同一个 Web 控制台里完成日常 DBA 工作流:性能趋势与 AAS 负载拆解、Top SQL、执行计划变更跟踪、缺失索引建议、索引使用与碎片、阻塞分析、死锁分析、慢日志。

专注于C#/.NET/.NET Core学习、工作、面试干货和实战教程分享。这里聚焦了大量的C#/.NET/.NET Core优质文章、开源项目、实用工具和学习、工作、面试心得。 192

.NET 11 - 尝试一下Blazor中Virtualize组件的Scroll新特性

2026年11月10日,微软发布了.NET 11正式版!这是一个STS版本, 微软提供两年支持。同时.NET 8 和 .NET 9 在 2026 年11月10日开始结束支持。.NET11处于Release Candidate 3阶段的时候,只支持在Visual Studio 2026 Insiders 和 Visual Studio Code(安装了C# Dev Kit.NET extension)中创建.NET11项目。

limingdinghao的博客 169

Keycloak.Admin.Sdk 26.8.1-preview.3 发布:从管理 API 到应用协议的 .NET 10 SDK

如果你的项目正在使用 Keycloak 26.8.1,欢迎通过 NuGet 体验 **26.8.1-preview.3**,也欢迎提交具体接口、协议或运行环境下的使用反馈。

ChaITSimpleLove的博客 358

Log4net .net framework4.6测试

路径要放在UI.EXE的同等路径下。

备忘 42

按Ctrl键会引发几次按键消息

                                                                           何志丹(一),新建一个单文档工程CtrlEg。(二),为CCtrlEgView的WM_KEYDOWN消息和WM_KEYUP消息添加响应函数。具体代码如下:void CCtrlEgView::OnKeyDown(UINT nChar, UINT nRe

闻缺陷则喜何志丹 1869

C# + .NET 8 + WPF + HALCON25.11

在解决方案资源管理器,右键→【设为启动项目】顶部菜单:【生成】→【生成解决方案】,看输出窗口,无报错按F5启动调试点击按钮【加载测试图】:图片显示,缺陷自动画红框,表格输出坐标。

qq_36657291的博客 309

微软技术日报 11-10:.NET 11 今晚发布,.NET 8 与 9 同日停更,Copilot 连接器开写入

今天微软技术侧的重心全压在一个日期上。11 月 10 日既是 .NET Conf 2026 开幕、.NET 11 正式发布的日子,也是 .NET 8 与 .NET 9 终止支持的日子。同一个日期上,一条线开始,两条线结束。除了这条主线,还有三件事在这一两天落地。微软安全博客公布了一轮用智能体扫 Rust 标准库的研究,Copilot 连接器的写入能力转为正式可用,Windows 11 的统一应用更新页又在预览版里冒了头。

海盗Sharp的博客 938

FFmpeg × C# 实战:从命令行原理到 .NET 工程化落地

本文系统讲解 FFmpeg 的核心概念(容器/编码/流/滤镜/时间基),并给出 C# 对接的五条技术路线对比。重点实现一个可落地的 FFmpegRunner 封装,解决管道死锁、结构化进度解析、取消超时、二进制分发与参数注入五大工程问题;随后覆盖转码、裁剪、合并、抽帧、限体积压缩、水印、硬件加速六大高频场景,并附安全清单与排错速查表。

李赛赛的专栏 667

微软技术日报 2026-11-11:补丁日 1093 个漏洞、Outlook 零日在野、.NET 11 正式发布

把这几条放在一起看,会发现它们指向同一个方向,留给维护的窗口在变短。补丁日一次一千多条、Azure Linux 一次四百多条 CVE 引用、ACL 把代码完整性做成可选审计再加一层默认镜像、.NET 把两个版本的支持期放在同一天结束,做的都是同一件事,把「以后再说」往后压。要做的事不算复杂。把对公网暴露的 Exchange 与 SharePoint 排进本周的窗口,Exchange 那条要预留重启时间;

海盗Sharp的博客 710

基于.NET的Windows窗体编程之WinForms数据持久化(1)

本文介绍了在.NET Windows窗体开发中,基于EFCore与SqlSugar两种主流ORM框架实现数据持久化的实践。通过创建实体模型、配置DbContext或ConnectionConfig,结合增删改查操作,展示了如何高效完成数据库交互。EFCore适合复杂CRUD场景,支持LINQ与迁移;SqlSugar则以简洁API和高性能著称,适用于快速开发。两者均显著降低SQL编写量,提升代码可维护性,助力开发者专注业务逻辑。

绳锯木断,水滴石穿,专心写文,无问西东!!! 225
上一篇: 使用基于邻接表的Dijkstra算法求解Project Euler问题
下一篇: 有点兴奋
JavaSxy
博客等级 码龄21年 1粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值