結果
問題 | No.21 平均の差 |
ユーザー | NakLon131 |
提出日時 | 2022-07-17 17:02:39 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 142 ms / 5,000 ms |
コード長 | 615 bytes |
コンパイル時間 | 78 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 10,752 KB |
最終ジャッジ日時 | 2024-06-29 18:09:58 |
合計ジャッジ時間 | 1,470 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 10 |
ソースコード
# input N = int(input()) K = int(input()) n = [int(input()) for i in range(N)] ans = 0 # 3bitで全探索 for i in range(3**N): g1 = [] g2 = [] g3 = [] x = i for j in range(N): if(x % 3 == 0): g1.append(n[j]) elif(x % 3 == 1): g2.append(n[j]) else: g3.append(n[j]) x //= 3 # 正しいグループかどうか判定 if(len(g1) > 0 and len(g2) > 0 and len(g3) > 0): ave1 = sum(g1) // len(g1) ave2 = sum(g2) // len(g2) ave3 = sum(g3) // len(g3) # 平均3つのうち、最大-最小を更新 ave_l = sorted([ave1, ave2, ave3]) ans = max(ans, (ave_l[2] - ave_l[0])) print(ans)