Codeへの愛とCuriosity

CodeIQ への出題・解説解題・その周辺について、思いつくままに。

勝ち点の不自然な値

JavaScriptじゃんけん大会! ( https://codeiq.jp/ace/nabetani_takenori/q888 ) 。
勝ち点が

勝利 30010ポイント
引き分け 10001ポイント
負け 0ポイント

となっている。

今回は、なぜこの値にしたのかの解説。

このルールは

  • 勝ったら勝ち点3。
  • 引き分けで勝ち点1。
  • 勝ち点が並んだら、勝ち数の多い方が上位

というルールと同値になっている。
参加者が1000人を超えると同値じゃなくなるかもしれないんだけど、今回は 100人なので大丈夫。

で。

それだけなら 3001 と 1000 でいいんだけど、 30010 と 10001 にしたので、勝ち点の値を見るだけで、だいたい引き分けの数も勝ちの数もわかるようになっている。

つまり。
引き分けが10回未満なら、一の位が引き分け、十の位から上に3桁見ると勝ち数になる。
例えば勝ち点が 160051 だったとすると、5勝1分けだとわかる。