农夫

你能成为生活的主宰

浪子不回头ぞ 提交于 2020-03-26 07:59:32
2010-9-30 9:17:47 作者:鲍勃·摩尔 胡克定 来源: 读者网 人应该展望未来,真正认识自己拥有的一切。   钻石宝藏100多年前,美国费城的6个高中生向他们仰慕已久的一位博学多才的牧师请求:"先生,您肯教我们读书吗?我们想上大学,可是我们没钱。我们中学快毕业了,有一定的学识,您肯教教我们吗?"   这位牧师名叫R·康惠尔,他答应教这6个贫家子弟。同时他又暗自思忖:"一定还会有许多年轻人没钱上大学,他们想学习但付不起学费。我应该为这样的年轻人办一所大学。"   于是,他开始为筹建大学募捐。当时建一所大学大概要花150万美元。   康惠尔四处奔走,在各地演讲了5年,恳求大学为出身贫穷但有志于学的年轻人捐钱。出乎他意料的是,5年的辛苦筹募到的钱还不足1000美元。   康惠尔深感悲伤,情绪低落。当他走向教堂准备下礼拜的演说词时,低头沉思他发现教室周围的草枯黄得东倒西歪。他便问园丁:"为什么这里的草长得不如别的教堂周围的草呢?"   园丁抬起头来望着牧师回答说:"噢,我猜想你眼中觉得这地方的草长得不好,主要是因为你把这些草和别的草相比较的缘故。看来,我们常常是看到别人美丽的草地,希望别人的草地就是我们自己的,却很少去整治自家的草地。"   园丁的一席话使康惠尔恍然大悟。他跑进教堂开始撰写演讲稿。他在演讲稿中指出:我们大家往往是让时间在等待观望中白白流逝

C - Catch That Cow

被刻印的时光 ゝ 提交于 2019-11-26 13:56:37
农夫知道一头牛的位置,想要抓住它。农夫和牛都于数轴上 ,农夫起始位于点 N(0<=N<=100000) ,牛位于点 K(0<=K<=100000) 。农夫有两种移动方式: 1、从 X移动到 X-1或X+1 ,每次移动花费一分钟 2、从 X移动到 2*X ,每次移动花费一分钟 假设牛没有意识到农夫的行动,站在原地不动。最少要花多少时间才能抓住牛? Input 一行: 以空格分隔的两个字母:N和K Output 一行: 农夫抓住牛需要的最少时间,单位分钟 Sample Input 5 17 Sample Output 4 Hint 农夫使用最短时间抓住牛的方案如下: 5-10-9-18-17, 需要4分钟 . 卡了几次Time Limit ,题目就是简单的广搜,只是要注意限制X移动到 2 X入队列的条件,让入队列的点在终点(牛位置)+2以内,超过这个范围的点X一般可以用-1再 2的操作到终点。 AC代码 #include"iostream" #include"string.h" #include"queue" #include"algorithm" using namespace std; int y; int map[100005]; struct t { int x,time; }; void BFS(t a) { queue<t> q; t now,next; q.push(a)