green stick figure

Công khai 9 thành viên
• 9:52 p.m. 19 Tháng 12, 2025

code là:

from collections import Counter

def mex(s):
i = 0
while i in s:
i += 1
return i

def valid_partition(partition, A):
# Kiểm tra phân hoạch hợp lệ
count_A = Counter(A)
for subset in partition:
count_subset = Counter(subset)
if count_A != count_subset:
return False
return True

def smallest_mex(A):
n = len(A)
A.sort() # Sắp xếp A để dễ dàng xử lý
min_mex = float('inf')

# Duyệt qua các phân hoạch của A (tạo ra các phân hoạch hợp lệ)
for partition in generate_partitions(A):
    if valid_partition(partition, A):
        partition_mex = mex(partition[0])  
        min_mex = min(min_mex, partition_mex)

return min_mex

Hàm sinh tất cả phân hoạch của A

def generate_partitions(A):
# Implement code to generate all partitions of A
pass

Ví dụ sử dụng

A = [1, 2, 3, 3]
print(smallest_mex(A))

...Xem thêm
• 3:24 p.m. 19 Tháng 12, 2025

A. MEX Partition

A. MEX Partition Nguồn: Codeforces

Ai có ý tưởng hay ko góp ý với (tôi giải xong rồi)

Giả sử ta có một đa tập \(B\).
Một phân hoạch của \(B\) là một tập hợp các đa tập \(s_1, s_2, …, s_k\) sao cho mỗi phần tử xuất hiện cùng số lần trong \(B\) và trong toàn bộ \(s_1, s_2, …, s_k\).

Ví dụ, một vài phân hoạch của \(\{1, 2, 3, 3\}\) bao gồm \(\{1, 3\} + \{2, 3\}, \{1, 2, 3, 3\},\) và \(\{2\} + \{1, 3\} + \{3\},\)
nhưng \(\{1, 2\} + \{3\}\) thì không phải.

Một phân hoạch được gọi là hợp lệ (valid) nếu \(m e x\) của tất cả các đa tập trong phân hoạch là giống nhau.
Điểm số (score) của một phân hoạch hợp lệ là giá trị \(m e x\) của bất kỳ đa tập nào trong phân hoạch đó.

Bạn được cho một đa tập \(A\) có kích thước \(n\).
Hãy tìm điểm số nhỏ nhất trong tất cả các phân hoạch hợp lệ của \(A\).

Ghi chú:
Giá trị \(m e x\) (minimum excluded) của một tập hợp các số nguyên \(c_1, c_2, …, c_k\) được định nghĩa là số nguyên không âm nhỏ nhất \(x\) mà \(x\) không xuất hiện trong tập hợp đó.

Input

Mỗi test gồm nhiều bộ dữ liệu.
Dòng đầu tiên chứa số nguyên \(t (1 ≤ t ≤ 100)\) — số lượng test.

Mô tả cho từng test:

  • Dòng đầu tiên chứa số nguyên \(n (1 ≤ n ≤ 100)\).
  • Dòng thứ hai chứa n số nguyên \(A_1, A_2, …, A_n (0 ≤ A_i ≤ 100)\).

Không đảm bảo rằng các phần tử được sắp xếp theo thứ tự tăng dần.

Output

Với mỗi test, in ra một số nguyên — điểm số nhỏ nhất của một phân hoạch hợp lệ của \(A\).

Example

Input

2
3
0 0 0
2
1 2

Output

1
0
...Xem thêm
• 10:45 a.m. 25 Tháng 7, 2025

nói gì đâu

???????????????????????????

...Xem thêm
• 2:25 p.m. 23 Tháng 7, 2025

Nói ai thế

P2c1tranvietnhan

...Xem thêm