A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 1871037345 高级黑马   /  2016-5-17 09:04  /  2835 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 1871037345 于 2016-5-17 23:42 编辑

一次拿一个,正好拿完,
一次拿两个,剩余一个,
一次拿三个,正好拿完,
一次拿四个,剩余一个,
一次拿五个,剩余一个,
一次拿六个,剩余三个,
一次拿七个,正好拿完,
一次拿八个,剩余一个,
一次拿九个,正好拿完,

13 个回复

倒序浏览
先设有n个鸡蛋,n==0开始,使n自加,用n值分别用%对1到9进行求余运算,当满足以上条件时,输出n的值,否则就不存在了,我是这样想的。
回复 使用道具 举报 1 0
CressJewel 发表于 2016-5-17 11:01
先设有n个鸡蛋,n==0开始,使n自加,用n值分别用%对1到9进行求余运算,当满足以上条件时,输出n的值,否则 ...

可以设为9的倍数.......更快一些......
回复 使用道具 举报
Turingchang 发表于 2016-5-17 18:35
可以设为9的倍数.......更快一些......

那请问 7  怎么办,
回复 使用道具 举报
CressJewel 发表于 2016-5-17 11:01
先设有n个鸡蛋,n==0开始,使n自加,用n值分别用%对1到9进行求余运算,当满足以上条件时,输出n的值,否则 ...

首先这样想是对的,但是你忽略了一点,你的循环什么时候结束。
你的想法是最直接的做法,还有一种办法,就是对其中的几个特殊条件进行分析,然后得出一些结论,根据结论去得到一个数,再拿不特殊的条件进行验证,如此循环,当然考虑到实际情况,一筐子鸡蛋,循环限定在1000以内已经很大了
回复 使用道具 举报
1871037345 发表于 2016-5-17 23:46
那请问 7  怎么办,

我想他的意思应该是先判断是否是9的倍数吧,这样确实可以先排除一部分的数。
回复 使用道具 举报
我的另一种思路是这样的,请多多赐教:
//  一筐鸡蛋
//一次拿一个,正好拿完,
//一次拿两个,剩余一个,  //说明为奇数
//一次拿三个,正好拿完,  //说明是3的倍数
//一次拿四个,剩余一个,
//一次拿五个,剩余一个,  //说明个位数是 1 或者 6,6是偶数可排除,
//一次拿六个,剩余三个,
//一次拿七个,正好拿完,  //说明是7的倍数
//一次拿八个,剩余一个,
//一次拿九个,正好拿完,  //说明是9的倍数

//由此可得这个数是 7 和 9 的公倍数(最小公倍数为63),且为 奇数,个位数是 1;
//因个位数为1,所以 只能是 63 * (7 + 40 * k),且k非负整数
//即符合条件的数是 63 * (7 + 40 * k),且k非负整数,化简之后是 2250k +441

回复 使用道具 举报
CressJewel 发表于 2016-5-20 19:53
我想他的意思应该是先判断是否是9的倍数吧,这样确实可以先排除一部分的数。 ...


我的另一种思路是这样的,请多多赐教:
//  一筐鸡蛋
//一次拿一个,正好拿完,
//一次拿两个,剩余一个,  //说明为奇数
//一次拿三个,正好拿完,  //说明是3的倍数
//一次拿四个,剩余一个,
//一次拿五个,剩余一个,  //说明个位数是 1 或者 6,6是偶数可排除,
//一次拿六个,剩余三个,
//一次拿七个,正好拿完,  //说明是7的倍数
//一次拿八个,剩余一个,
//一次拿九个,正好拿完,  //说明是9的倍数

//由此可得这个数是 7 和 9 的公倍数(最小公倍数为63),且为 奇数,个位数是 1;
//因个位数为1,所以 只能是 63 * (7 + 40 * k),且k非负整数
//即符合条件的数是 63 * (7 + 40 * k),且k非负整数,化简之后是 2250k +441
然后再判断一下是否符合其余的条件
回复 使用道具 举报 1 0
1871037345 发表于 2016-5-20 20:25
我的另一种思路是这样的,请多多赐教://  一筐鸡蛋//一次拿一个,正好拿完,//一次拿两个,剩余一个,  ...

很棒,只是这种方法需要提前做一定的计算
回复 使用道具 举报
1871037345 发表于 2016-5-20 20:25
我的另一种思路是这样的,请多多赐教://  一筐鸡蛋//一次拿一个,正好拿完,//一次拿两个,剩余一个,  ...

很棒,只是这种方法需要提前做一定的计算
回复 使用道具 举报
是啊,通过观察,我们自己分析一下就可以省去很多麻烦,所以是我们人脑控制电脑,不然就惨了,
回复 使用道具 举报
CressJewel 发表于 2016-5-22 09:03
很棒,只是这种方法需要提前做一定的计算

谢谢。
是啊,通过观察,我们自己分析一下就可以省去很多麻烦,所以是我们人脑控制电脑,不然就惨了,

回复 使用道具 举报
思路清晰,很厉害
回复 使用道具 举报
运算思路很牛逼
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马