結果

問題 No.334 門松ゲーム
ユーザー はむ吉🐹はむ吉🐹
提出日時 2016-01-16 13:09:06
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 64 ms / 2,000 ms
コード長 1,106 bytes
コンパイル時間 78 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 10,880 KB
最終ジャッジ日時 2024-09-19 19:56:07
合計ジャッジ時間 1,252 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 13
権限があれば一括ダウンロードができます

ソースコード

diff #

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import collections
import itertools


IMPOSSIBLE = [-1]


def is_kadomatsu(triplet):
    a, b, c = triplet.values()
    if a == b or b == c or c == a:
        return False
    elif b == max(a, b, c) or b == min(a, b, c):
        return True
    else:
        return False


def judge(sequence):
    if len(sequence) < 3:
        return IMPOSSIBLE
    else:
        for t_triplet in itertools.combinations(sequence.items(), 3):
            triplet = collections.OrderedDict(t_triplet)
            if not is_kadomatsu(triplet):
                continue
            else:
                rest_sequence = collections.OrderedDict(
                    p for p in sequence.items() if p[0] not in triplet)
                result = judge(rest_sequence)
                if result == IMPOSSIBLE:
                    return triplet
                else:
                    continue
        else:
            return IMPOSSIBLE


if __name__ == "__main__":
    n = int(input())
    ks = collections.OrderedDict(enumerate(map(int, input().split())))
    print(*judge(ks))
0