IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

从1到4000中各位数字之和能被4整除的有多少个?

Matrix67: My Blog 2011-10-14 13:44:16 累计浏览 3,084 次
本机暂存

     一个小学奥数老师给我讲了一道小学奥数题,这是他在上课时遇到的:从 1 到 4000 中,各位数字之和能被 4 整除的有多少个?

     注意,问题可能没有你想的那么简单,满足要求的数分布得并没有那么规则。 1 、 2 、 3 、 4 里有一个满足要求的数, 5 、 6 、 7 、 8 里也有一个满足要求的数,但是 9 、 10 、 11 、 12 里就没有了。

     尽管如此,这个问题仍然有一个秒杀解。你能多快想到?

         答案就是 1000 。首先, 0 和 4000 都是满足要求的数,因而我们不去看 1 到 4000 中有多少个满足要求的数,转而去看 0 到 3999 中有多少个满足要求的数,这对答案不会有影响。注意到,如果固定了末三位,比如说 618 ,那么在 0618 、 1618 、 2618 、 3618 这四个数中,有且仅有一个数满足,其各位数字之和能被 4 整除。考虑从 000 到 999 这 1000 个可能的末三位组合,每一个组合都唯一地对应了一个满足要求的四位数,因此问题的答案就是 1000 。

同分类推荐文章

  1. Four Levels Of Customer Understanding (2026-05-22 21:00:00)
  2. 除法的意义 (2026-04-12 20:52:17)
  3. 第五章:共识算法 (2026-03-18 08:00:00)

查看更多 算法 文章 →

建议继续学习

  1. 为什么算法这么难? (累计阅读 12,324)
  2. 浅谈MySQL索引背后的数据结构及算法 (累计阅读 11,533)
  3. 加州求职记 (累计阅读 11,449)
  4. 谷歌(Google)2011年校园招聘笔试题 (累计阅读 9,523)
  5. 最常被程序员们谎称读过的计算机书籍 (累计阅读 9,084)
  6. 再谈“我是怎么招聘程序员的” (累计阅读 8,724)
  7. 如何在面试中发现优秀程序员 (累计阅读 8,193)
  8. IBM面试记 (累计阅读 7,306)
  9. 数学之美:《社交网络》中Facemash算法分析 (累计阅读 7,084)
  10. 谈谈在校程序员技能培养 (累计阅读 7,041)