现在的位置: 首页 > 综合 > 正文

Q6.6

2018年04月29日 ⁄ 综合 ⁄ 共 524字 ⁄ 字号 评论关闭

问题:在过道上有100把上了锁的锁头。有一个人,第一次操作把这100把锁都打开了; 第二次操作,每隔1个锁他就把锁给锁上(即把编号2,4,6…100的锁锁上)。 第三次操作,每隔2个锁他就改变锁的状态,即如果原本是开着的,他就锁上; 原本是锁着的,他就给打开。(操作对象是编号为3,6,9…99的锁)。
当他做完第100次操作后(即只对编号为100的锁操作),打开着的锁有几把?

分析:每次就改变一些锁的状态。第1把锁只会在第1次操作时被改变状态, 第2把锁会在第1次及第2次操作时被改变状态,假设能被i整除的数有a,b,c, (包含1和它本身),那么第i把锁会被改变3次,分别是在第a,b,c次操作的时候。 这样一来,对于第i把锁,如果能被i整除的数有奇数个, 那么它最后的状态一定打开的,否则则是关闭的。问题就转换为1到100的数中, 哪些数能整除的数的个数有奇数个。而,一个数i如果能整除a, 那么它也可以整除i/a,这样一来,一个数能整除的数总是成对出现,
为了使个数是奇数,这里面一定要有一对是相等的,即a = i/a,也就是:i = a2, 所以,最后开着的锁就是编号为完全平方数的锁,即:

1, 4, 9, 16, 25, 36, 49, 64, 81, 100

一共有10把锁是打开着的。

【上篇】
【下篇】

抱歉!评论已关闭.