python
韩信点兵典故
一、韩信点兵典故
韩信点兵典故的背后,蕴含着许多值得我们学习的智慧和经验。韩信是中国历史上著名的军事家,他的点兵故事是他聪明才智的象征,也成为了我们学习和应用智慧的经典之一。
背景
韩信生活在战国时期,那个时候各国频繁争战,兵员数量庞大。有一次,韩信要对自己的军队进行点兵,以便了解有多少士兵可用于作战。
故事
韩信在点兵时,利用了一种智慧和巧妙的方法。他让士兵分成三组,分别站成一列,然后告诉他们:“前面的人数加上后面的人数等于100人。”这样一来,无论他们的人数如何,都能通过计算确定总人数。这个方法极大地简化了计算的过程,让他能够快速准确地统计军队的人数。
智慧与经验
韩信点兵典故教导我们许多重要的智慧和经验,尤其在解决问题和应对挑战时,我们可以从中汲取许多启示:
- 运用智慧:韩信的点兵方法展现了他聪明智慧的一面。他思考问题的方式让人佩服,通过找到一个简洁明了的解决方案解决问题。我们应该学会在面对问题时灵活运用我们的智慧,不拘泥于传统的思维模式。
- 巧妙应对:韩信点兵的方法充满了巧妙。他利用了数字的特性,通过设定一个等式,将复杂的计算简化为简单的加法运算。在工作和生活中,我们也可以通过巧妙应对问题,找到更加高效和有效的解决方案。
- 简化复杂性:韩信的点兵方法通过将复杂的问题简化,使得计算变得简单明了。在现代社会,我们经常面对许多复杂的问题和挑战。通过学习韩信的点兵典故,我们可以领悟到简化复杂性的重要性,并寻找简单的方法来解决问题。
- 准确和迅速:韩信以迅速准确著称,他点兵的方法也充分体现了这一点。对于他来说,准确地统计军队的人数至关重要,他通过巧妙的方法实现了这一目标。在我们的工作和生活中,也需要追求准确和迅速,在面对挑战时不拖延,以达成目标。
结论
韩信点兵典故是一则富有智慧和经验的故事。它告诉我们在解决问题和应对挑战时,要善用智慧,巧妙应对,简化复杂性,并追求准确和迅速。通过这个典故的启示,我们可以在工作和生活中更加聪明地处理各种问题,取得更好的成果。
二、ACM--韩信点兵(java)
ACM--韩信点兵(java)
在程序设计竞赛中,算法和数据结构是至关重要的,而ACM(Association for Computing Machinery)竞赛则是当今最著名的计算机程序设计竞赛之一。
对于ACM竞赛来说,韩信点兵问题是一个经典的算法问题之一。这个问题的描述是这样的:韩信有一队士兵,他想知道这支队伍有多少人。他让这些士兵排成一列,然后每隔一定的人数杀掉一个,如此往复。每次都是在最后一个士兵之后再从第一个士兵开始数。现在给定原来的总人数n和每次报数的间隔m,求最后一个被杀掉的士兵编号。
现在我们使用Java语言来实现这个经典问题的解决方案:
public class HanXinDianBing {
public static int lastRemaining(int n, int m) {
if (n == 1) {
return 0;
} else {
return (lastRemaining(n - 1, m) + m) % n;
}
}
public static void main(String[] args) {
int n = 5;
int m = 3;
int result = lastRemaining(n, m);
System.out.println("最后一个被杀掉的士兵编号为:" + result);
}
}
在上面的Java代码中,我们定义了一个叫做HanXinDianBing
的类,其中包含了一个静态方法lastRemaining
用来计算最后一个被杀掉的士兵编号,另外在main
方法中调用了这个静态方法并输出结果。
ACM竞赛和算法学习
ACM竞赛对于计算机算法的学习有着重要的促进作用。在准备ACM竞赛的过程中,参赛选手需要通过解决各类算法问题来提升自己的编程能力和思维逻辑能力。而韩信点兵问题就是其中之一,它考验着选手的递归思维和数学推导能力。
算法的重要性
在现代科技发展迅速的时代,算法无处不在,它贯穿在各个方面的计算机应用之中。优秀的算法能够提高程序的效率、减少资源消耗,并且能够解决复杂的问题。因此,掌握好算法对于计算机专业的学生和从业者来说至关重要。
同时,算法的学习也是一项持续的过程,在解决各种各样的算法问题中不断提升自己的能力。ACM竞赛为广大计算机爱好者提供了一个很好的平台,让他们可以在竞技的氛围中学习、交流,共同提高算法水平。
三、韩信点兵法?
相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。
输入3个非负整数a,b,c ,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100 。
四、韩信点兵的诗?
韩信点兵,多多益善。原文如下:上尝从容与韩信言诸将能不,各有差。上问曰:“如我,能将几何?”
信曰:“陛下不过能将十万。”
上曰:“于君何如?”
曰:“臣,多多而益善耳。”
上笑曰:“多多益善,何为为我禽?”
信曰:“陛下不能将兵,而善将将,此乃信之所以为陛下禽也。且陛下所谓天授,非人力也。”
五、韩信点兵茶语?
伺人把壶在茶杯上斟茶时,成心地将茶壶在杯子上往返地斟出的动作,茶道的术语叫:关公巡城也。点马者,即点兵,就是在“巡城”的动作之后,待茶壶内的茶水只剩下很小一点时,茶水在壶嘴一点一滴地流出,茶道术语称为“韩信点兵”也。择英良者,此指幸运儿也,是“点兵”时,最后一滴茶水落到谁的杯内,他就是荣幸的。
六、韩信点兵的口诀?
口诀是:
三人同行七十稀,
五树梅花开一枝,
七子团圆正月半,
除百零五便得知。
汉高祖刘邦曾问大将韩信:“你看我能带多少兵?”韩信斜了刘邦一眼说:“你顶多能带十万兵吧!”汉高祖心中有三分不悦,心想:你竟敢小看我!“那你呢?”韩信傲气十足地说:“我呀,当然是多多益善啰!”
刘邦心中又添了三分不高兴,勉强说:“将军如此大才,我很佩服。现在,我有一个小小的问题向将军请教,凭将军的大才,答起来一定不费吹灰之力的。”韩信满不在乎地说:“可以可以。”刘邦狡黠地一笑,传令叫来一小队士兵隔墙站队,刘邦发令:“每三人站成一排。”队站好后,小队长进来报告:“最后一排只有二人。”“刘邦又传令:“每五人站成一排。”小队长报告:“最后一排只有三人。”刘邦再传令:“每七人站成一排。”小队长报告:“最后一排只有二人。”刘邦转脸问韩信:“敢问将军,这队士兵有多少人?”韩信脱口而出:“二十三人。”刘邦大惊,心中的不快已增至十分,心想:“此人本事太大,我得想法找个岔子把他杀掉,免生后患。”一面则佯装笑脸夸了几句,并问:“你是怎样算的?”韩信说:“臣幼得黄石公传授《孙子算经》,这孙子乃鬼谷子的弟子,算经中载有此题之算法,口诀是:
三人同行七十稀,
五树梅花开一枝,
七子团圆正月半,
除百零五便得知。”
七、韩信点兵是几岁?
韩信点兵是三十岁,韩信是中国古代一位有名的军事家,民间流传着许多他的故事,韩信点兵便是其中之一。
秦朝末年的时候,战火四起,楚汉相争。在一次战斗中,韩信率1500名将士与楚王大将李锋交战。苦战一场,楚军不敌,败退回营,于是,韩信整顿兵马也返回大本营。当行至一山坡,忽有后军来报,说有楚军骑兵追来。只见远方尘土飞扬,杀声震天。汉军本来已十分疲惫,这时队伍大哗,韩信兵马到坡顶,见来敌不足五百骑,便急速点兵迎敌。
八、解释韩信点兵原理?
中国剩余定理
民间传说着一则故事——“韩信点兵”。
秦朝末年,楚汉相争。一次,韩信将1500名将士与楚王大将李锋交战。苦战一场,楚军不敌,败退回营,汉军也死伤四五百人,于是韩信整顿兵马也返回大本营。当行至一山坡,忽有后军来报,说有楚军骑兵追来。只见远方尘土飞扬,杀声震天。汉军本来已十分疲惫,这时队伍大哗。韩信兵马到坡顶,见来敌不足五百骑,便急速点兵迎敌。他命令士兵3人一排,结果多出2名;接着命令士兵5人一排,结果多出3名;他又命令士兵7人一排,结果又多出2名。韩信马上向将士们宣布:我军有1073名勇士,敌人不足五百,我们居高临下,以众击寡,一定能打败敌人。汉军本来就信服自己的统帅,这一来更相信韩信是“神仙下凡”、“神机妙算”。于是士气大振。一时间旌旗摇动,鼓声喧天,汉军步步进逼,楚军乱作一团。交战不久,楚军大败而逃。
首先我们先求5、9、13、17之最小公倍数9945(注:因为5、9、13、17为两两互质的整数,故其最小公倍数为这些数的积),然后再加3,得9948(人)。
在一千多年前的《孙子算经》中,有这样一道算术题:
“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”按照今天的话来说:一个数除以3余2,除以5余3,除以7余2,求这个数.
这样的问题,也有人称为“韩信点兵”.它形成了一类问题,也就是初等数论中解同余式.这类问题的有解条件和解的方法被称为“中国剩余定理”,这是由中国人首先提出的.
① 有一个数,除以3余2,除以4余1,问这个数除以12余几?
除以3余2的数有:
2, 5, 8, 11,14, 17, 20, 23….
它们除以12的余数是:
2,5,8,11,2,5,8,11,….
除以4余1的数有:
1, 5, 9, 13, 17, 21, 25, 29,….
它们除以12的余数是:
1, 5, 9, 1, 5, 9,….
一个数除以12的余数是唯一的.上面两行余数中,只有5是共同的,因此这个数除以12的余数是5.
如果我们把①的问题改变一下,不求被12除的余数,而是求这个数.很明显,满足条件的数是很多的,它是 5+12×整数,
整数可以取0,1,2,…,无穷无尽.事实上,我们首先找出5后,注意到12是3与4的最小公倍数,再加上12的整数倍,就都是满足条件的数.这样就是把“除以3余2,除以4余1”两个条件合并成“除以12余5”一个条件.《孙子算经》提出的问题有三个条件,我们可以先把两个条件合并成一个.然后再与第三个条件合并,就可找到答案.
②一个数除以3余2,除以5余3,除以7余2,求符合条件的最小数.
先列出除以3余2的数:
2, 5, 8, 11, 14, 17, 20, 23, 26,…,
再列出除以5余3的数:
3, 8, 13, 18, 23, 28,….
这两列数中,首先出现的公共数是8.3与5的最小公倍数是15.两个条件合并成一个就是8+15×整数,列出这一串数是8, 23, 38,…,再列出除以7余2的数 2, 9, 16, 23, 30,…,
就得出符合题目条件的最小数是23.
事实上,我们已把题目中三个条件合并成一个:被105除余23.
那么韩信点的兵在1000-1500之间,应该是105×10+23=1073人
中国有一本数学古书「孙子算经」也有类似的问题:「今有物,不知其数,三三数之,剩二,五五数之,剩三,七七数之,剩二,问物几何?」
答曰:「二十三」
术曰:「三三数之剩二,置一百四十,五五数之剩三,置六十三,七七数之剩二,置三十,并之,得二百三十三,以二百一十减之,即得。凡三三数之剩一,则置七十,五五数之剩一,则置二十一,七七数之剩一,则置十五,即得。」
孙子算经的作者及确实著作年代均不可考,不过根据考证,著作年代不会在晋朝之后,以这个考证来说上面这种问题的解法,中国人发现得比西方早,所以这个问题的推广及其解法,被称为中国剩余定理。中国剩余定理(Chinese Remainder Theorem)在近代抽象代数学中占有一席非常重要的地位。
韩信被贬淮阴侯时高祖找他聊天 高祖说:韩信你说寡人我能带多少兵。 韩信说:10万绝对不能超过10万。高祖又说:你呢。韩信说:韩信点兵 多多益善. 高祖说:那你不是比我还厉害吗,那你为什么会被寡人抓到呢。韩信说:皇上您是将之将 我是兵之将 当然不如陛下您
九、韩信点兵的典故?
“韩信点兵”的故事是“韩信点兵,多多益善”的典故中得来的。具体故事如下:
刘邦曾经问他:“你觉得我可以带兵多少?”韩信:“最多十万。”刘邦不解的问:“那你呢?”韩信自豪地说:“越多越好,多多益善嘛!”刘邦半开玩笑半认真的说:“那我不是打不过你?”韩信说:“不,主公是驾驭将军的人才,不是驾驭士兵的,而将士们是专门训练士兵的。”
1、《史记》和《汉书》记载,韩信,淮阴(今江苏清江西南)人,善于带兵打仗。西汉开国功臣,中国历史上杰出的军事家,与萧何、张良并列为汉初三杰。
2、刘邦问韩信:“如我能将几何?”信曰:“陛下不过能将十万。”上曰:“于君如何?”曰:“臣多多益善耳”(《史记·淮阴侯列传》)。这段对答说汉王问:“以你之见,我能带多少兵?”韩信答:“你最多带十万。”汉王又问:“那么,你能带多少兵?”韩信答:“我多多益善,”即越多越好。后来人们把这个典故归纳成“韩信点兵,多多益善。”
3、韩信是中国军事思想"谋战"派代表人物,被萧何誉为"国士无双",刘邦评价曰:"战必胜,攻必取,吾不如韩信。"韩信是中国军事思想"谋战"派代表人物,被后人奉为"兵仙"、"战神"。"王侯将相"韩信一人全任。"国士无双"、"功高无二,略不世出"是楚汉之时人们对其的评价。
十、韩信点兵多少笔画?
韩是十二画,信是十画,点是九画,兵是七画,共计三十八画
热点信息
-
在Python中,要查看函数的用法,可以使用以下方法: 1. 使用内置函数help():在Python交互式环境中,可以直接输入help(函数名)来获取函数的帮助文档。例如,...
-
一、java 连接数据库 在当今信息时代,Java 是一种广泛应用的编程语言,尤其在与数据库进行交互的过程中发挥着重要作用。无论是在企业级应用开发还是...
-
一、idea连接mysql数据库 php connect_error) { die("连接失败: " . $conn->connect_error);}echo "成功连接到MySQL数据库!";// 关闭连接$conn->close();?> 二、idea连接mysql数据库连...
-
要在Python中安装modbus-tk库,您可以按照以下步骤进行操作: 1. 确保您已经安装了Python解释器。您可以从Python官方网站(https://www.python.org)下载和安装最新版本...