- 注册时间
- 2018-1-1
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 58
- 在线时间
- 小时
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?欢迎注册
×
题一:一个商人骑着驴,1000米的沙漠,在行路的开始,一共6000个玉米棒,商人每走一米吃一个玉米棒,商人一次最多带1000根玉米,问,最后到达终点时,商人能够最多还有多少根题目中所说的玉米棒?
题二:一个人走一趟1000米的路,在行路的开始,一共3000个烧饼,这个人没走一米吃一个烧饼,这个人每次最多带600个烧饼,问,这个人到达终点时,这个人最多还有多少个题目中所说的烧饼?
看这两道题是不同的题,其实那天我想了一下,解题的思路都是差不多的。
方法如下:
第一题中,假设这个人第一次在行路的开始带走1000根玉米棒,他行了x米,然后,他放下一定的个数的玉米,再返回,然后再拿走1000,再返回,他的任务是一共要拿走6000根玉米棒,
这样一共至少需要走5个来回再加上1个去的路程才行,那就是11个x的路程,
如果能够在行了x米的地方,落下2000个玉米,那么再从x米为起点,拿走1000个玉米,走y米,放下若干个,再返回,再拿走1000个,这样在距离起点x+y的路程的点上时,玉米棒应该剩下1000根应该是最多的
11x=4000
x=363,余数是7
那每次走363米,再返回,走11个363米,会带走6000根玉米棒,也就是距离出发点363米的地方,会剩下2000+7=2007根玉米棒,
从起点距离x点的路程点开始,一共有2007根玉米棒,从距离最初起点的x米的路程点上开始起,一次走出y米,最少用3个趟y米可以带走其中1000根,那么在距离起点x+y的路程点上时,最后会剩下1000根,那就会一次性的都带走,
2000-3y=1000根,
那么3y=1001
x=333......1
2000-3*333=1002
总路程还差
1000-333-363=504米
玉米最后还剩多少呢?
1000-504=496(个)
所以最后的答案就是496个。
遇到类似题目的方法总结是:
一个人从起点出发,共有a个小馒头,路程b米,每走一米需要吃掉一个旺仔小馒头,每次最多带c个旺仔小馒头,问,怎么走,才会使得行到终点时最后剩下的小馒头最多,
先看a和c,如果a/c的整数部分,假设这个整数是d,那就是(想要带走全部的小馒头,也就是a,需要走多少个来回,这个来回的次数就是d)一次带走c,那么如果想要带走a个,那就需要a/c个来回,
d*2-1就是要走的x路程的遍数,要走几遍x路程,每一遍需要消耗x个小馒头,在距离起点x米的点上,每一个来回到达距离起点x米的路程点上,会放下(c-2x)个小馒头,再回头继续行x米,回到起点,再拿c个小馒头,
以此类推,一共走了d*2-1遍的x路程,这个值就是e
然后再用
a-2c得到一个数f,2c是第二次向前走时,必须在距离起点x米处剩下的小馒头的个数,f就是在第二次向前走之前需要消耗和在放在距离起点x米处的小馒头的个数
f/e就会得到一个整数部分的值,这个值为x
x即为第一次出发要走的离开起点的米数,也就是每走一遍x会吃掉的小馒头的个数,
第二次向终点出发之前,距离出发点x米的路程点上的小馒头个数应该是2c个,走出y米后,需要带走c个小馒头,所以需要走三遍y米,
(2c-c)/3,求得一个整数部分为y的值,也就是每走一遍y米,需要消耗的小馒头的个数。
然后用b-x-y,求得第三次从距离出发点x+y的地方需要向终点走的米数,
c-(b-x-y)求得最后走到终点时,所剩下的小馒头的个数。
|
|