【平安面试】1-50共50个数中,每次取走其中两个求差的绝对值,将其放入其中,问最后一次操作完后,剩下的数字可能是多少?


1-50共50个数中,每次取走其中两个数求两个数的差的绝对值,将结果放回其中,问最后一次操作完后,剩下的数字可能是多少?
已邀请:

wsk - Idiots. Idiots never change.

赞同来自: maoxiong AndyJee sugite Miracle_lucy hxk622


我简单猜一下,1到50之间的奇数:

第1步、排除偶数
    50个数,25个奇数,25个偶数

    用1代表一个奇数,用0代表一个偶数,-代表二者的差的绝对值

    1-0=1   消掉一个偶数
    1-1=0   消掉两个奇数
    0-0=0   消掉一个偶数

    只能成对地消掉奇数,因此25个奇数,导致最终剩下的数必是奇数

第2步、举例生成所有奇数
我们以47为例,49-2=47
48-1=47 50-3=47
4-3=1     6-5=1
...
45-44=1 47-46=1
两个47可以抵消,其他的我们将相邻两个取出,差为1,这些1一共有22组,可以全部抵消,因此47存在
按此方法应该可以生成1-49的奇数

要回复问题请先登录注册