今日の役に立たない一言 - Today’s Trifle! -

古い記事ではさまざまなテーマを書いていますが、2007年以降はプログラミング関連の話がほとんどです。

ランダム・アルバイト・クイズ(解答編)

結城さんの日記で解答が出てた。期待通りの数学的な解答。自分で考えるのは投げたけど、これはこれで解答を知りたかった。(^^)
satoshis案は、結城さんの日記の中で紹介された、きぞくさんの解答と同じ。これに対して結城さんからコメントがついていた。

結城のコメント: とおりすがりさんからも、同様の解答をいただきました。 きぞくさんの答えは題意を満たしていますが、 「最も点数が低い人」を探すときに余分な手間がかかる可能性があることを指摘しておきます。

手間がかかるということなので反論のコメント。
結城さんの答えは題意を満たしていますが、常に「n人目」を数えなければならないという余分な手間がかかるのと、n人目に待機を言い渡したときに、待機している S 人から「拒否」する人をランダムに指名する余分な手間がかかることを指摘しておきます。
もうひとつ補足。これは結城さんの出題の意図とは関係がないことだけど、ソフトウェア開発的な観点から思ったこと。
実際にそのプログラムがあったとしたら、結城さんの方法で書かれたプログラムは、それが正しいのか直感的に理解できないという大きな欠点がある。
それに対して、ランダムな点数をつけるやり方は、誰にでも直感的に理解できるんじゃないかと思うけど、どう?