本篇是 IMO 2021 第一题题解及相关拓展问题分析 和 IMO 2021 第 1 题拓展问题的两个极值的编程求解 的延伸篇。

从上两篇的分析,可知:

当 n < 48 时,n, n+1, ..., 2n 中没有奇数环;当 n ≥ 99 时,n, n+1, ..., 2n 中有 3 数环。

而当 48 ≤ n ≤ 98 时,n, n+1, ..., 2n 中,根据 n 取值的不同,存在没有奇数环的情形,也存在有奇数环的情形。并在有奇数环的情形中,大多数都存在 3 数环,只有 3 个例外情形,即:

(1). n = 49,n, n+1, ..., 2n 中无 3 数环,但有 5 数环:49, 51, 70, 74, 95;

(2). n = 71,n, n+1, ..., 2n 中无 3 数环,但有 5 数环:71, 73, 96, 100, 125;

(3). n = 97,n, n+1, ..., 2n 中无 3 数环,但有 5 数环:97, 99, 126, 130, 159。

对比这 3 个例外情形,可以发现它们有一些有意思的共同特征:

I. 三者的最小奇数环都是 5 数环,且构成 5 数环的 5 个数都可以按从小到大的顺序排列;

II. 三者的 5 数环中最小的两个数都是奇数,且两数的差都为 2;

III. 三者的 5 数环中大小居中的数以及更大的那个数都是偶数,且两数的差都为 4;

IV. 三者的 5 数环中最大的数都是奇数;

V. 三者的 5 数环中最小的数就等于 n。

把 5 数环中的 5 个数按从小到大分别记为 a, b, c, d, e,构建的 5 个完全平方数分别为 a+b, b+c, c+d, d+e, e+a。n = 49 时,对应的 5 数环构建的 5 个完全平方数为 49+51=100,51+70=121,70+74=144,74+95=169,95+49=144,亦即 102,112,122,132,122

同样可得:

n = 71 时,对应的 5 数环构建的 5 个完全平方数为 122,132,142,152,142

n = 97 时,对应的 5 数环构建的 5 个完全平方数为 142,152,162,172,162

对比发现,3 组完全平方数都呈现出 (2m-2)2,(2m-1)2,(2m)2,(2m+1)2,(2m)2 的形态,于是有

a + b = 4m2 - 8m + 4    ①

b + c = 4m2 - 4m + 1     ②

c + d = 4m2                   ③

d + e = 4m2 + 4m + 1    ④

e + a = 4m2                   ⑤

由 ② - ① 有 c - a = 4m - 3,由 ③ + ⑤ - ④ 有 c + a = 4m2 - 4m - 1

进而可得:

a = 2m2 - 4m + 1, b = 2m2 - 4m + 3, c = 2m2 - 2, d = 2m2 + 2, e = 2m2 + 4m - 1

上面 3 个 5 数环分别对应 m = 6, 7, 8 的情形。

考察一下 m = 5 的情形,a = 50 - 20 + 1 = 31,b = 33,c = 48,d = 52,e = 69,即 (31, 33, 48, 52, 69) 构成一个 5 数环,但由于 31·2 = 62 < 69,可知 n = 31 时,n, n+1, ..., 2n 中并不存在这个 5 数环。m = 2,3,4 的情形有同样的结论。

再考察一下 m = 9 的情形,a = 162 - 36 + 1 = 127,b = 129,c = 160,d = 164,e = 197,即 (127, 129, 160, 164, 197) 构成一个 5 数环,而且 127·2 = 254 > 99·2 = 198 > 197,说明当 99 ≤ n ≤ 127 时,n, n+1, ..., 2n 中存在这个 5 数环,但由前面的分析已知 n ≥ 99 时,n, n+1, ..., 2n 中还存在阶数更小的奇数环(即 3 数环)。m > 9 的情形有同样的结论。

n, n+1, ..., 2n 中的 5 数环初探的更多相关文章

  1. WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探

    原文:WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探         最近因为项目需要,开始学习如何使用WPF开发桌面程序.使用WPF一段时间之后,感 ...

  2. Java中的多线程操作初探

    问题引出: 说是java,其实还是在做android的时候遇到的问题,在android 4.0以后,访问网络必须在新线程中实现,所以才会遇到这个问题.只是为了方面说明问题,才新建一个java项目.在m ...

  3. Docker在云环境中的应用实践初探:优势、局限性与效能评测

    作者 商之狄 发布于 2014年11月10日 本文依据笔者所在团队的一些近期开发和应用的实践,整理出一些有意义的信息,拿出来和社区分享.其中既包括在云端应用Docker与相关技术的讨论,同时也有实施过 ...

  4. cocos2dx 3.2中的物理引擎初探(一)

    cocos2dx在设计之初就集成了两套物理引擎,它们是box2d和chipmunk.我目前使用的是最新版的cocos2dx 3.2.引擎中默认使用的是chipmunk,如果想要改使用box2d的话,需 ...

  5. Java中自动装箱代码初探

    <深入理解Java虚拟机>中讲语法糖时,提到了下面这个例子(不是原文中的例子,我自己改过): public class AutoBoxingTest { /** * @param args ...

  6. EntityFramework 中的链接研究初探

    很多人用EF的默认链接工厂:System.Data.Entity.Infrastructure.LocalDbConnectionFactory 然后我一开始就不习惯,然后研究了一下,截图如下 然后就 ...

  7. Android中的MVP架构初探

    说来羞愧,MVP的架构模式已经在Android领域出现一两年了.可是到今天自己才開始Android领域中的MVP架构征程. 闲话不多说,開始吧. 一.架构演变概述 我记得我找第一份工作时,面试官问我& ...

  8. ifix中嵌入3d模型初探(一)

    在ifix项目中插入3d模型,是当前工控上位机的一个发展趋势,故而我也来尝尝鲜.利用现有条件,初步打算完成一个工厂俯视3d全景. 基本思路:利用webbrowser+3dmax+three.js来嵌入 ...

  9. IDEA中Maven的使用初探

    Maven Maven官网:https://maven.apache.org/ Apache Maven 是一个软件项目管理和理解工具.基于项目对象模型 (POM) 的概念,Maven 可以从一条中央 ...

随机推荐

  1. Mysql数据量较大时分页查询优化

    据表 collect ( id, title ,info ,vtype) 就这4个字段,其中 title 用定长,info 用text, id 是主键,vtype是int,vtype是索引. 最后co ...

  2. 第二章 Vant的v-cell的v-for使用

    遍历加载list数据,类似el-table 一.问题描述 由于VantUI中没有类似于el-table的table组件,看官网的范例,只找到了cell组件有v-for

  3. IDEA web项目小坑

    1.明明依赖包都加进来了,为什么运行起来报java.lang.ClassNotFoundException? 依赖包的路径只能为{project}web/WEB-INF/lib,如果将lib改为lib ...

  4. QML用Instantiator动态创建顶级窗口

    关键点 使用Model驱动Instantiator QML里面的hashmap: QQmlPropertyMap 上一次说到用 QQmlApplicationEngine 多次load的方式创建多个一 ...

  5. Linux常见问题解决方案

    1.Kali2020添加BCM43142的网卡驱动 来源:https://www.fujieace.com/kali-linux/wifi-drive.html 我只是执行了第三步:安装网卡驱动,即: ...

  6. Docker for windows安装与使用

    1.安装Docker for windows之前,需要将系统的hyper-v功能打开 2.下载Docker for windows进行安装 访问url:https://docs.docker.com/ ...

  7. SpringBoot-静态资源加载-源码

    目录 静态资源映射规则 什么是webjars 呢? 第二种静态资源映射规则 参考链接 静态资源映射规则 SpringBoot中,SpringMVC的web配置都在 WebMvcAutoConfigur ...

  8. 寻找写代码感觉(一)之使用 Spring Boot 快速搭建项目

    写在前面 现在已经是八月份了,我已经荒废了半年居多,不得不说谈恋爱确实是个麻烦的事,谈好了皆大欢喜,分手了就是萎靡不振,需要很长一段时间才能缓过来. 人还是要有梦想的,至于实现只不过是一个契机,但凡不 ...

  9. Shell-07-文本处理grep

    文本处理sed sed:流编辑器,过滤和替换文本 工作原理:sed命令将当前处理的行读入模式空间进行处理,处理完把结果输出,并且清空模式空间. 然后再将下一行读入模式空间进行处理输出,以此类推,直到最 ...

  10. Golang语言系列-11-goroutine并发

    goroutine 并发 概念 package main import ( "fmt" "time" ) /* [Go语言中的并发编程 goroutine] [ ...