タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

麻雀と#programmingに関するDoenのブックマーク (2)

  • スキルはあるが飯は食えないかもしれない - Pashango’s Blog

    仕事が一段落したので、久しぶりの更新です。 あなたのスキルで飯はえるか? 史上最大のコーディングスキル判定 面白そうなのでPythonで解いてみました、実装時間は1時間くらいです。 Pythonすごいなー、C++Javaでやれって言われたら3時間では終わらんわ・・・ #!/usr/bin/env python #-*- coding:utf-8 -*- import sys import itertools def main(input): # 牌情報を"牌が何個あるか"という数値配列形式に変換 # 例) 1223344888999 => [1, 2, 2, 2, 0, 0, 0, 3, 3] t = sorted([int(x) for x in input]) num_hi = [t.count(x) for x in range(1,10)] # 順子・刻子・アタマのすべての要素

    スキルはあるが飯は食えないかもしれない - Pashango’s Blog
  • 第10回 麻雀の役を判定する:ITpro

    図1に示す(1)から(3)までの麻雀(マージャン)の手牌があります。「あがり牌」はすべて山からツモったものとし,リーチはかけていません。またドラやハイテイ*1なども関係ないものとします。これらの役を判定して,親の場合の点数を計算するプログラムを作ってください。 「ややこしや~ややこしや~」というのは野村萬斎ですが,思わずそううなってしまうことがプログラミングをしているとよくあります。今回の麻雀の役判定は,考えれば考えていくほどややこしく,そうしたものの代表と言えるでしょう。排他処理や優先順位が複雑にからんでいて一筋縄ではいきません。 今回はややこしい組み合わせを解決する方法を考えてみます。麻雀になじみのない方も,ちょっとしたパズル気分で試してみてください。 麻雀の役を考える 麻雀を知らない方のためにルールをおおざっぱに説明しておきましょう*2。麻雀の牌には,大きく分けて「萬子(マンズ)」「

    第10回 麻雀の役を判定する:ITpro
  • 1