邹志林吧 关注:54贴子:662
  • 3回复贴,共1
把1、2、3、…2018、2019这2019个连续自然数写成一排,每次擦掉最前面两个,并在最后面写上它们的和。当剩下两个数时,这两个数的差是多少?


IP属地:湖南来自Android客户端1楼2019-01-27 18:43回复
    解答此题之前,先看“
    基本型”:
    当数列的项数恰好是2^n时。
    如:项数为8=2^3
    1、2、3、4、5、6、7、8。
    3、7、11、15
    10、26
    36
    当划去第一行8个数后,增加了第二行4个数。【看成第一**作】
    当划去第二行4个数后,增加了第三行2个数。【看成第二**作
    此时只剩下两个数。
    说明:8=2^3,如果进行3**作,只剩下一个数,少操作一轮,就剩下两个数。
    并且,这两个数中,第一个数是前4项的和,第二个数是后四项的和。
    求差就比较简单。
    像这种特殊情况,由于两组中第一个与第一个的差(5与1)、第二个与第二个的差(6与2)…都是4,也可以直接求总差4*4=16


    IP属地:湖南来自Android客户端2楼2019-01-30 18:36
    回复
      本题中,项数2019不是2的若干次方,所以第一步,就是先擦去若干次(每擦一次,擦了2个,添了1个,实际减少1个),使数的个数恰好是2^n。
      2^10=1024<2019<2^11=2048
      所以减少2019-1024=995个数,也就是进行995次操作,共擦去995*2=1990个数。
      现在,留下的1024个数是:
      1991、1992、…、2018、2019、x1、x2...x995
      (x1、x2...表示新1、新2...,以此类推)


      IP属地:湖南来自Android客户端3楼2019-01-30 18:49
      回复
        问题转化为:求这1024个数中,前512个数的和,与后512个数的和的差,就不难了。


        IP属地:湖南来自Android客户端4楼2019-01-30 18:54
        回复