たけしのコマネチ大学数学科

ザッピングしててひっかかる。
東京で一月前にやってたらしいのをKBS京都で初見。
「問題:1から1億までの整数の中に出てくる、すべての数字の和を求めよ!」
(すべての桁の数をとりだして、一桁で全部足しちゃえってことらしい。)
 
解答1とほぼ方法的には同じだし、
ネットでも私と似たような解き方で解いた人も散見したけど
一応今さら書いてみる。
 
みんな紙に書いてごちゃごちゃ時間かけてやってたり
帰納法がどうのと言ってたけど
これ、上の桁の0を書かないから、難しいだけで
一億の1を取っ払った00,000,000を、一番前にまわし、すべて上の桁の
0も表記して(たとえば1,234を00,001,234とか)
00,000,000〜99,999,999 での和と考えて
最後に一億の桁の1を足せば
暗算で出来る問題。
(0は何回足しても結果に影響を与えないって事を使ってます。)
 
00,000,000〜99,999,999での各桁に現れる
0の個数=1の個数=2の個数=・・・=9の個数は
さらに桁が違ってもすべて同じってのは十進法の定義から
(あるいはこの系の対称性から(つまりどの数字が特別とか
どの桁が特別とかなく、数字同士、桁同士がすべて対等。)から)
自明のことじゃないのかなぁ。これに推測とか帰納法要る?
(そうじゃないとすべての場合を網羅できないじゃん。
数字だと思うからいかんので場合の数を求めると
思えばわかりやすいと思うんだが。)
 
そうすると後は1の桁の和を求めれば桁数だけ倍にすればいい話。
0〜9までの10個の数字の和が45で(これは(0+9)×10/2で出る)
これが1億÷10回出てくる、8桁あるから
(45×10,000,000)×8
(あぁ、おれ、二桁の整数入るとかけ算暗算でできないって人、大丈夫。
45×8=45×(2×4)=(45×2)×4=90×4
または
45×8=(9×5)×8=9×(5×8)=9×40
(どちらもしくさんじゅうろくかける10になる)
他いくつかの方法で一桁同士のかけ算九九の世界に持ち込めます。)
ということで最後に一億の桁の1足して
36億1
 
二進数表記に慣れてくるとこれに気づくのは意外と簡単(^^;
(すべて0からすべて1までのX桁の二進数を順番に数えていくと
どの桁も現れうる0の度数と1の度数は同じでさらに桁が違っても同じ
ってのはすぐ気がつく。)
 

たけしのコマ大数学科-フジテレビ
http://www.fujitv.co.jp/b_hp/komanechi/index.html