TopCoder SRM 657 Div2 Easy: EightRooks
これも簡単。
問題はこちら。
問題
チェス盤に8つのルークが互いに攻撃し合わない位置にいる状態を8ルークという。 与えられた盤面が8ルークを満たしているかどうか答えよ。
解法
各行、各列ごとにルークがぴったり1つだけいるかどうかを確認すればよい。
def isCorrect(self, board): for y in xrange(8): if board[y].count("R") != 1: return "Incorrect" board = ["".join(board[y][x] for y in xrange(8)) for x in xrange(8)] for y in xrange(8): if board[y].count("R") != 1: return "Incorrect" return "Correct"
まとめ
Div1にはこの発展問題が出ていた。