热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

鸽巢原理应用于一道十分有意思的题目

在组合数学中学习鸽巢原理。其中一道例题是这样的:从1,2,3,4,,200这200个整数中选取101个整数,则一定存在两个数存在整除关系

在组合数学中学习鸽巢原理。其中一道例题是这样的:

从1,2,3,4,..., 200这200个整数中选取101个整数,则一定存在两个数存在整除关系?

解答:

一个数对其按照2进行因式分解,总可写成n = 2 ^ k * t(其中k >=0, t为奇数)。例如2 = 2 ^ 1 * 1; 3 = 2 ^ 0 * 3...

而1到200存在奇数1,3,5,7,..., 199一共100个奇数。我选取101个整数,则说明存在两个整数i,j, 它们经过分解,t是相等的。所以前面的k是不一样的。也就证明了i,j存在整除关系。很简单是吗?请看下面一道扩展题。


从1,2,3,4,..., 200这200个整数中选取100个整数,其中只有一个数小于16,证明一定存在两个数存在整除关系?

我们这样想:

    定义两个集合A =  {a[1], a[2], ..., a[100]}

                           B = {1, 3, 5, 7, ..., 199}

其中A是从200个整数中选取的100个整数,而B[i]则是某个a[j]经过按2分解最后的奇数t。

经过思考,若选取的100个数不存在整除关系,则每个数一定映射到不同的奇数。若两个数经分解后得到相同的奇数,则这两个数能够整除。

我们再来分情况讨论,

        对于最小数15,

        它映射到集合B的元素是15。假设映射到集合B为45的元素为M,则M和15是什么关系呢?一定整除,对不对?所以存在整除。

       对于13, 39

                11, 33

                 9,  27

                 7, 21

                5, 15

               3, 9

              1不用说,肯定存在整除关系。

关键是对于1到15之间的偶数,如何处理?

       对于14, 14 = 2 * 7(k = 1)。 映射到B中的元素为7。

       我们接着考虑B的为7的倍数的元素{21, 35, 49, 63, 77, 91, 105,..., 189}

      我们知道105后面的映射到A就是它们本身,因为A中每个数都小于200.

     接着我们随便来考虑一组数值<35, 105>.105是35的倍数&#xff0c;为了使它们两者对应到A中的元素不存在整除&#xff0c;则A中的元素一定是2 ^ k * 35(k > 0)。而这是A中的元素一定是14

的整倍数。所以要么是14的倍数&#xff0c;要么是105和35对应的数存在整数倍关系。

      对于10,10 &#61; 2 * 5(k &#61; 1)处理方式和14一样。

       对于6&#xff0c;处理方式和14一样。

接着我们来考虑12,8,4,2.

     先来考虑2吧。

     若A中存在元素2&#xff0c;若不存在整数关系&#xff0c;其它199个数都是奇数。我们知道&#xff0c;这些奇数中肯定存在整除关系。

    再来考虑12吧。

    对于12&#xff0c;12 &#61; 2 ^ 2 * 3(k &#61; 2, t &#61; 3)

    奇数为3.我们来考虑B中的 sub_B&#61;&#xff5b;9, 15, 21, 27, ...99, 105, 111, 117, ..., 195&#xff5d;

    这些都是3的倍数。

   为了不和12产生整除关系设定sub_B 到A中元素的映射关系为 2 ^ k * sub_B[i](其中一定是小于等于1的)

我们知道105以后的k一定是0.我们来看tri_pair<9, 27, 117>117是27的倍数&#xff0c;27是9的倍数。为了是它们映射到A中元素不能整除&#xff0c;所以2 ^ 1 * 27, 2 ^ 2 ^ 9。

  这个时候我们发现&#xff0c;2 ^ 2 * 9 已经是12的倍数了。要么9, 27, 117对应于A中的数之间存在整除关系&#xff0c;要么其中有些数是12的倍数&#xff0c;总之&#xff0c;存在整除关系。

   来考虑8和4。

  对于4 &#61; 2 ^ 2 * 1(k &#61; 2, t &#61; 1)

  正如在对于12讨论的那样&#xff0c;一定存在4的倍数。


   对于8 &#61; 2 ^ 3 * 1&#xff08;t &#61; 1&#xff09;对于3次方如何考虑呢&#xff1f;

   还是按照原来的思路。

  我们取sub_B &#61; {3, 9, 15, 21, ..., }

这样对于<3, 21, 63, 189>后面的在这里就不写了。

到现在&#xff0c;我们已经将1,2,3,4,5,..., 15全部讨论完了。对于每个数都存在整除关系。

吐舌头


推荐阅读
  • 本文将介绍网易NEC CSS框架的规范及其在实际项目中的应用。通过详细解析其分类和命名规则,探讨如何编写高效、可维护的CSS代码,并分享一些实用的学习心得。 ... [详细]
  • 本文介绍了多个关于JavaScript的书籍资源、实用工具和编程实例,涵盖从入门到进阶的各个阶段,帮助读者全面提升JavaScript编程能力。 ... [详细]
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 本文详细介绍了C语言中的指针,包括其基本概念、应用场景以及使用时的优缺点。同时,通过实例解析了指针在内存管理、数组操作、函数调用等方面的具体应用,并探讨了指针的安全性问题。 ... [详细]
  • C语言标准及其GCC编译器版本
    编程语言的发展离不开持续的维护和更新。本文将探讨C语言的标准演变以及GCC编译器如何支持这些标准,确保其与时俱进,满足现代开发需求。 ... [详细]
  • 本文探讨了 Swapper 工具对系统内存和存储设备(如 SD 卡)的潜在影响,解释其工作原理及使用时需要注意的问题。 ... [详细]
  • 本主题面向IT专业人士,介绍了Windows Server 2012 R2和Windows Server 2012中的组托管服务账户(gMSA),涵盖了其应用场景、功能改进、硬件和软件要求以及相关资源。 ... [详细]
  • 无线通信设备的OTA测试及其重要性
    随着智能设备和无线通信技术的广泛应用,确保这些产品在各种应用场景中的稳定性和可靠性变得至关重要。OTA(Over The Air)测试作为一种关键手段,能够有效验证无线传输设备的整体性能,解决通信问题并提升用户体验。 ... [详细]
  • 在现代Web应用中,当用户滚动到页面底部时,自动加载更多内容的功能变得越来越普遍。这种无刷新加载技术不仅提升了用户体验,还优化了页面性能。本文将探讨如何实现这一功能,并介绍一些实际应用案例。 ... [详细]
  • MySQL 高性能实战教程
    本课程深入探讨 MySQL 的架构、性能调优、索引优化、查询优化及高可用性等关键领域。通过实际案例和详细讲解,帮助学员掌握提升 MySQL 数据库性能的方法与技巧。 ... [详细]
  • 解决SVN图标显示异常问题的综合指南
    本文详细探讨了SVN图标无法正常显示的问题,并提供了多种有效的解决方案,涵盖不同环境下的具体操作步骤。通过本文,您将了解如何排查和修复这些常见的SVN图标显示故障。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 本文探讨了Java编程的核心要素,特别是其面向对象的特性,并详细介绍了Java虚拟机、类装载器体系结构、Java类文件和Java API等关键技术。这些技术使得Java成为一种功能强大且易于使用的编程语言。 ... [详细]
  • 基于结构相似性的HOPC算法:多模态遥感影像配准方法及Matlab实现
    本文介绍了一种基于结构相似性的多模态遥感影像配准方法——HOPC算法,该算法通过相位一致性模型构建几何结构特征描述符,能够有效应对多模态影像间的非线性辐射差异。文章详细阐述了HOPC算法的原理、实验结果及其在多种遥感影像中的应用,并提供了相应的Matlab代码。 ... [详细]
author-avatar
手机用户2502903761
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有