こんにちはブログ担当のYです
今回も論理クイズを紹介します
1000個のロッカー
ある学校の部室には1000個のロッカーがありました
また、1000人の部員がおり、部員たちは次のような行動をとった
初めに、ロッカーの扉は全て閉まっている
1000人が順番に並び、1番目の人は1の倍数のロッカー(全てのロッカー)の扉を開けた
2番目の人は2の倍数のロッカーの扉を閉めた
3番目の人は3の倍数のロッカーの扉を、扉が開いていれば閉め、閉まっていれば開けた
4番目の人は……
1000番目の人は1000の倍数のロッカーの扉を開いていれば閉め、閉まっていれば開けた
さて、この時いくつのロッカーが開いているでしょうか
答え
31個
操作が終わった後に開いたままのロッカーというのは、そのロッカーの番号の約数の数が奇数であることと等しい
例えば16の約数は1、2、4、8、16の5つなのでそれぞれ1番、2番、4番、8番、16番の人がロッカーの扉を操作する
初めは閉まっているので奇数回操作すると最後には開いたままである
約数が奇数個の数とは1、4、9、16、25……のように2乗の形で表せる平方数です
なぜかというと
1(1)1個
4(1、2、4)3個
9(1、3、9)3個
16(1、2、4、8、16)5個
25(1、5、25)3個
平方数ではない数の約数というのは2つで1セットになっているため、偶数個になる
しかし平方数の約数は、普通の数の約数の偶数個に加え、平方根1個があるため奇数個になる
問題に戻ると、開いたままのロッカーは平方数であることがわかったので、1000までの平方数の個数が分かればいい
30^2=900
31^2=961
32^2=1024
1000までの平方数で一番大きいのは31の2乗で961
つまり1000までの整数の中には平方数が31個ある
したがって開いたままのロッカーの個数も31個となる
他の論理クイズの記事もCheck!