一道小学追击问题,码农们撸起袖子,各种答案。

  • J
    Jerry74
    题目都见过:每天时针分针在何时重合?
    当简单方程能解决时,很多人还是习惯性地用穷举,然而由舍入误差产生了各种各样的答案。

    当编程抛开数学,码农真成码农。
  • z
    z16166
    除以11,除不尽。
  • z
    zengdragon
    我提供一个思路,将时针,分针,秒针视作三个运动员,环操场跑。
    时针只跑一圈,每次覆盖区域为43200/12=3600;分针跑12圈,每次覆盖区域为43200/12/60=60;秒针跑60*60*12=43200圈,每次覆盖1度。
    三个人在同一位置应该怎么表述?
    时分秒用xyz代替,同一位置等价于?
    每次z的值在y区间内,y的值又在x区间内。
    x的值=取整(z/3600),y的值=取整(z/60),z‘的值=取余数(z/60)。
    问题等价于:x=y=z‘,(z从0到43200时,这种情况会发生几次)
    又是取整又是取余数,这个问题比想象中复杂多了,出给小学生太超纲了。
    喝多了有点儿晕,明天再想。 iOS fly ~
  • z
    z16166
    果然是喝多了啊哈哈,题目没有秒针

    而且楼主吐槽主要是说码农上来就用代码搞,而不是先用数学公式推导。并不是吐槽这个题目有多难。

    假设x点y分的时候,时针、分针重合,那么按圆的角度算,

    时针走过的角度 = 分针走过的角度,即 (x + y/60)/12 = y/60

    得:60x = 11y,其中x=0, 1, 2, ..., 10(x=11时,y=60,是11点60分,也就是12点0分,和0点0分是一样的含义。上、下午区分一下就是答案)
  • z
    zengdragon
    我的内心是崩溃的iOS fly ~
  • x
    xzap
    22次,每个点分针追到时针一次,11点的时候。分针永远追不上时针。所以每12小时重叠11次。所以就是11等分就可以了。设时间为x,那么每次追到的时间就是 x时60x/11分 因为11时追不上,所以x取值0到10。下午开始时加12就是
  • n
    neo520
    回复6#xzap
    看您的解题思路一目了然,一天24小时,两个11点追不上,每个小时能追上一次,所以是24-2=22次 iOS fly ~
  • r
    robert0829
    12个点11段,因为是圆,有一个点是重复的
  • s
    styeath
    把时针分针画两条波形曲线呢 iOS fly ~
  • w
    weiyangge
    这就是传说中的自己树个靶子自己打么?
  • x
    xx6412223
    初中经典应用题,两个小朋友跑步
  • s
    samsonlin
    用角速度很轻松列方程
  • k
    ketkou
    其实直接在脑中模拟时针和分针的转动并数数就能算出来
  • z
    zalara
    只用算第一次即可,后面再加上这个时间间隔
    (360+y°)/60x=y°/x
    x是时钟速度,60x是分钟速度,算出来y是360/59,大概就是1分多一点点
  • t
    tips
    每天时针分针在何时重合?
    我理解穷举就是要最简单的做法
  • J
    Jerry74
    回复17#tips

    穷举法(避免舍入误差):
    [f'{t//3600}:{t%3600//60}:{t%60}' for t in range(1,43200) if .1*t%360<=t/120<.1*(t+1)%360]

    数学计算:
    [f'{t//3600}:{t%3600//60}:{t%60}' for i in range(11) if (t:=i*43200//11)]
  • h
    hhygm
    0点重合为起点
    重合点为 0,0+1/11,0+2/11,0+3/11,0+4/11,0+5/11,0+6/11,0+7/11,0+8/11,0+9/11,0+10/11,0+11/11(0)。往复循环
    因此重合点在圆中的度数就是 n/11 *360,n=0-11 iOS fly ~
  • 屋大维
    这种题目,码农面试遇到也不罕见吧?。。。不过算brain teaser
  • j
    jadeyang
    回复8#robert0829
    因为是圆,所以12个点难道不是12段吗? iOS fly ~
  • t
    tiret
    那么,时针 分针 秒针 三针重合呢?

    似乎仅有 00:00:00 和 12:00:00 这两种可能?
  • J
    Jerry74
    开始也感觉应该有三针重合,但公式列出后,确定没有,因为719是质数。
  • 富到没朋友
    这可不是数学问题,分针跟时针的宽度没给出来,24次才对,我对着家里的时钟看了24小时,得到准确答案