結果

問題 No.334 門松ゲーム
ユーザー pluto77pluto77
提出日時 2018-07-27 12:17:11
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
AC  
実行時間 45 ms / 2,000 ms
コード長 478 bytes
コンパイル時間 97 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 10,752 KB
最終ジャッジ日時 2024-07-01 03:31:10
合計ジャッジ時間 1,446 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 29 ms
10,496 KB
testcase_01 AC 30 ms
10,624 KB
testcase_02 AC 40 ms
10,624 KB
testcase_03 AC 32 ms
10,624 KB
testcase_04 AC 33 ms
10,752 KB
testcase_05 AC 31 ms
10,624 KB
testcase_06 AC 34 ms
10,624 KB
testcase_07 AC 34 ms
10,624 KB
testcase_08 AC 32 ms
10,624 KB
testcase_09 AC 32 ms
10,752 KB
testcase_10 AC 45 ms
10,496 KB
testcase_11 AC 34 ms
10,624 KB
testcase_12 AC 30 ms
10,624 KB
testcase_13 AC 30 ms
10,496 KB
testcase_14 AC 32 ms
10,624 KB
testcase_15 AC 32 ms
10,624 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#yuki334
import itertools


def iskd(t,l):
    a,b,c = [l[i] for i in t]
    if a==b or b==c or a==c:
        return False
    return max(a,b,c)==b or min(a,b,c) == b
  

def solve(n,l):
 if n<3:
  return (-1, )
 for t in itertools.combinations(range(n),3):
  if not iskd(t,l):
   continue
  ks=[k for i,k in enumerate(l) if i not in t]
  res=solve(n-3,ks)
  if res==(-1, ):
   return t
 return (-1, )

n=int(input())
l=list(map(int,input().split()))        
print(*solve(n,l))
0