プログラミング
プログラミングクイズ第2弾!!【解答編】
こんにちは、志學舎若葉台教室KID’sプログラミングラボ担当の阿部龍之介です。
早速ですが、前回のプログラミングクイズの答えを発表いたします!!
前回の問題:Aさん、Bさん、Cさんの3人で羽根つきをしている。ルールは以下のとおり
・勝った人は次の試合も出れる
・負けた人は待機している人と交代。次の試合は出られない
試合の結果、Aさんは合計10試合、Bさんは合計15試合、Cさんは合計17試合を行っていたことが分かった。
さて、第2試合(最初に行われた試合の次の試合)で負けたのはだれ?
答え:Aさん 順を追って解説していきます!
まず、全体の試合数を求めます。3人が行った試合数を合計すると 10 + 15 + 17 = 42。
3人の試合数の合計が42だから、全体として行われた試合数は 42 ÷ 3 = 14 …… ではありません!
羽根つきは2人で行われるので、1試合につき2人が試合数を重複してカウントします。そのため、全体として行われた試合数は42 ÷ 2 = 21 が正解です。羽根つきの試合は計21回行われました。
さて、これだけでは何もわかりません。
判明している事実は、全体の試合数と「3人の試合数に偏りがある」ことです。そこで、もう少し話を進めて「理論上可能な最小出場回数(つまり、一番出る回数が少なく済むのは何試合か?ということ)」について考えてみましょう。
方法は簡単「毎回必ず敗北すること」。試合数を最小におさえるためには、毎回負けて次の試合は一休みし「試合を行わない」ことでなるべく少ない試合数で21試合を乗り切りらねばなりません。
「毎回必ず敗北する」ということは、たとえば1試合目は出て、2試合目は休んで、3試合目は出て……といった具合になるので、
1試合目から試合に参加した場合
1-3-5-7-9-11-13-15-17-19-21(11試合)
2試合目から試合に参加したら
2-4-6-8-10-12-14-16-18-20(10試合)
という出場履歴になります。つまり理論上可能な最小出場回数は「10試合」です。
あともう少し!
気づきましたか?このルールにおいて「出場回数10試合」を達成するためには
2-4-6-8-10-12-14-16-18-20(10試合)
しかありません。すなわち10試合を行ったAさんがこれにあたります。
そして問題文で聞かれているのは「2試合目で負けたのは誰か」。
Aさんは2試合目・4試合目・6試合目……で羽根つきを行い-そのすべての試合で敗北しています。つまり、正解は Aさん になるわけです。すこし難しかったかな?
志學舎若葉台教室と高幡教室では、小学校低学年から中学生・高校生までを対象に、ゲーム作成をメインとしたプログラミング教室「Kidsプログラミングラボ」が行われています。
「プログラミングって難しいんでしょ?」「まだタイピングやパソコン操作が慣れていなくて…」って方、ご安心ください!
Kidsプログラミングラボなら、マウス操作のみで作れるプログラミング「Scratch」を扱っているため、パソコン操作が不安なお子様でも大丈夫!!
「もっと高度なゲームを作りたい」って思う方は、YouTubeやAIなどに使われる「Python」、Web制作に必要な「HTML,CSS,JavaScript」、3DゲームやUnityに使われる「C++」など、初心者から上級者まで楽しめます!
少しでも気になった方は是非、志學舎若葉台教室、志學舎高幡教室、志學舎南大沢教室のKidsプログラミングラボに来てみてはいかがでしょうか!
https://kids-prolab.com/location/te11/
〒206-0824 東京都稲城市若葉台2丁目4−4 若葉台駅前KMビル3階
https://kids-prolab.com/location/te10/
〒191-0032 東京都日野市高幡1000−2 三井住友銀行 高幡不動ビル4階
https://kids-prolab.com/location/te1/
〒191-0034 東京都八王子市南大沢2-27 フレスコビル2階
志學舎ではSNSで情報発信中!ブックマーク登録、チャンネル登録をお願いします!
人気ブログランキング
↑受験カテゴリー1位!応援クリックよろしく!
にほんブログ村
↑こちらも頑張ってます!応援クリックよろしく!