求一个算法!

编程有钱人了 2017-02-06 03:13:14
一筐鸡蛋:
1个1个拿,正好拿完。
2个2个拿,还剩1个。
3个3个拿,正好拿完。
4个4个拿,还剩1个。
5个5个拿,还差1个。
6个6个拿,还剩3个。
7个7个拿,正好拿完。
8个8个拿,还剩1个。
9个9个拿,正好拿完。

问筐里最少有多少鸡蛋?
用c# 实现!
...全文
261 17 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
ajianchina 2017-02-06
  • 打赏
  • 举报
回复
我看错了,不好意思,是问的最少,最少441
ajianchina 2017-02-06
  • 打赏
  • 举报
回复
这题目写的不够严谨啊,按我的算法,结果最少为441,结果无穷多啊 441 2961 5481 8001 10521 13041 15561 18081 20601 23121 25641 28161 30681 33201 35721 38241 40761 43281 45801 48321 50841 53361 55881 58401 60921 ........
编程有钱人了 2017-02-06
  • 打赏
  • 举报
回复
引用 12 楼 xuzuning 的回复:
假定 n = 4 5个一拿就差一个,也可以说是剩4个
是的,我估计出题人写错了(这样比较好,毕竟这是编程题,不是考字眼的)
编程有钱人了 2017-02-06
  • 打赏
  • 举报
回复
引用 8 楼 xuzuning 的回复:
#1 写错了条件,应为 for (var i = 9; ; i += 9) { if (i % 2 == 1 && i % 4 == 1 && i % 5 == 4 && i % 6 == 3 && i % 7 == 0 && i % 8 == 1) { Console.WriteLine(i); break; } } 结果 1449 5个5个拿,还差1个。 就是 5个5个拿,还剩4个。
别的都是剩一个,这里是差一个,出题的人估计是写错了,如果没写错 我认为上面就对了!不仔细看 还真没看出来
lihaorango 2017-02-06
  • 打赏
  • 举报
回复
小白学习的路过
xuzuning 2017-02-06
  • 打赏
  • 举报
回复
假定 n = 4 5个一拿就差一个,也可以说是剩4个
编程有钱人了 2017-02-06
  • 打赏
  • 举报
回复
引用 8 楼 xuzuning 的回复:
#1 写错了条件,应为 for (var i = 9; ; i += 9) { if (i % 2 == 1 && i % 4 == 1 && i % 5 == 4 && i % 6 == 3 && i % 7 == 0 && i % 8 == 1) { Console.WriteLine(i); break; } } 结果 1449 5个5个拿,还差1个。 就是 5个5个拿,还剩4个。
剩4个?我没看出来 求解
  • 打赏
  • 举报
回复
引用 8 楼 xuzuning 的回复:
#1 写错了条件,应为 for (var i = 9; ; i += 9) { if (i % 2 == 1 && i % 4 == 1 && i % 5 == 4 && i % 6 == 3 && i % 7 == 0 && i % 8 == 1) { Console.WriteLine(i); break; } } 结果 1449 5个5个拿,还差1个。 就是 5个5个拿,还剩4个。
尼玛一个编程题,还包含语文陷阱啊……
xuzuning 2017-02-06
  • 打赏
  • 举报
回复
考虑到还有 7个7个拿,正好拿完。 则步长改为 7*9=63 可进一步加快逼近速度
xuzuning 2017-02-06
  • 打赏
  • 举报
回复
#1 写错了条件,应为 for (var i = 9; ; i += 9) { if (i % 2 == 1 && i % 4 == 1 && i % 5 == 4 && i % 6 == 3 && i % 7 == 0 && i % 8 == 1) { Console.WriteLine(i); break; } } 结果 1449 5个5个拿,还差1个。 就是 5个5个拿,还剩4个。
编程有钱人了 2017-02-06
  • 打赏
  • 举报
回复
引用 5 楼 qq_34798533 的回复:
怎么混到7级的?
我没看题,别人发我的,看到答案 觉得很简单!我还得回复别人,时间忙没时间看
喝水不喝茶 2017-02-06
  • 打赏
  • 举报
回复
这不就是求能整除3,7,9最小的奇数吗
xiaoyu5425 2017-02-06
  • 打赏
  • 举报
回复
怎么混到7级的?
  • 打赏
  • 举报
回复
9个正好拿完,那说明必定是9的倍数啊,然后一开始怎么也要9个吧,其实一开始写18个也可以,反正9是肯定不对的
  • 打赏
  • 举报
回复
上面的将判断顺序依次颠倒,即%8写在最前面,可以减少判断次数
编程有钱人了 2017-02-06
  • 打赏
  • 举报
回复
引用 1 楼 starfd 的回复:
for (var i = 9; ; i += 9)
{
    if (i % 2 == 1 && i % 4 == 1 && i % 5 == 1 && i % 6 == 3
        && i % 7 == 0 && i % 8 == 1)
    {
        Console.WriteLine(i);
        break;
    }
}
I=9 何意?
  • 打赏
  • 举报
回复
for (var i = 9; ; i += 9)
{
    if (i % 2 == 1 && i % 4 == 1 && i % 5 == 1 && i % 6 == 3
        && i % 7 == 0 && i % 8 == 1)
    {
        Console.WriteLine(i);
        break;
    }
}

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧