結果
| 問題 |
No.519 アイドルユニット
|
| コンテスト | |
| ユーザー |
norioc
|
| 提出日時 | 2025-10-30 01:31:54 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 953 bytes |
| コンパイル時間 | 411 ms |
| コンパイル使用メモリ | 82,084 KB |
| 実行使用メモリ | 93,532 KB |
| 最終ジャッジ日時 | 2025-10-30 01:31:59 |
| 合計ジャッジ時間 | 5,283 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | TLE * 1 -- * 33 |
ソースコード
def set_uniform_partitions(n: int, k: int, yield_func):
"""
n 個の要素を、要素数 k のグループに等分割する全てのパターンを生成する
"""
assert n > 0 and k > 0 and n % k == 0
def rec(p: int, g: list[int], freq: list[int]):
if p == n:
yield_func(g)
return
for i in range(len(freq)):
if freq[i] < k: # i 番目のグループに所属する
g[p] = i
freq[i] += 1
rec(p+1, g, freq)
freq[i] -= 1
if freq[i] == 0: # 新たなグループの作成
break
g = [0] * n
freq = [0] * (n // k) # グループに所属する要素数
rec(0, g, freq)
def func(g: list[int]):
global ans
pass
N = int(input())
G = []
for _ in range(N):
G.append(list(map(int, input().split())))
ans = 0
set_uniform_partitions(N, 2, func)
print(ans)
norioc