トーナメントの試合数って秒で計算できます?

こんにちは、如月翔也(@showya_kiss)です。
 ネタがあまりにもないので(あるにはあるんですがキナ臭くて大炎上すると嫌なのでそのネタは封印する事にしたんです)とんちというか頭の体操のお話しをしたいと思います。
 最後に答えと解説も書きますので、よければチャレンジして下さいね。

トーナメントの試合数を求めよ

問題は「トーナメントを行う際、最終的に行う事になる総試合数を求めよ」です。
 条件は以下です。

  • 参加人数は2の乗数。よってシードは発生しない。
  • 引き分けは発生しない。すべての試合で明確な勝敗が決まる。
  • 試合を勝ち抜けた後怪我などで棄権する参加者はいない。
  • 全ての勝敗は試合によって決まり、それ以外の理由で参加者の脱落は発生しない

さて、この場合、優勝者が決まるまでに何試合必要でしょうか?
 もちろん参加者数は数字で出ていないので、答えはなんらかの計算式で求められます。
 では、次に答えと解説を書きますね。まだ考えたい人は先を読まないで下さいね。

答えと解説

答えは、「参加者数-1試合」が必要です。
 試合の負けによるものでない脱落が発生せず、引き分けによる再試合が行われない以上、考え方は単純です。
 1試合に敗者は1名しか発生しません。そして、トーナメントは「1人の勝者が生き残り、他が全員敗北する」だけの試合数が必要です。
 要するに、参加者全員から1人だけ生き残り、「残り全員が負けるだけの試合数が必要」なんですよね。
 ちなみに銅メダルを決めるために3位4位決定戦を行う場合はプラス1試合されるので「参加者と同じだけの試合数」が必要になります。

これ系の計算方法、いちいち数えたり方程式を作るのもアリなんですが、今回は「目線を変える」方向性で答えを出して欲しかったので、参加者128名とか書かずに抽象的な書き方をしてみました。

こういうのに頭使うのって楽しいですよね。

この記事を書いた人 Wrote this article

如月翔也

 ガジェットとAppleとTRPGが大好きな中年男です。文章をとにかく書くのが好きなので毎日のように色々なブログで文章を打ちまくっています。もし何か心に引っかかるものがあれば私のTwitterをフォローして頂けると更新情報が流れます。