Đây được dự định là một môn đánh gôn dễ chơi, có kích thước vừa phải.
Các mex (tối thiểu số tự túc) của một bộ sưu tập hữu hạn các số là số nguyên không âm nhỏ nhất 0, 1, 2, 3, 4, ...
mà không xuất hiện trong bộ sưu tập. Nói cách khác, đó là mức tối thiểu của phần bù. Hoạt động mex là trung tâm để phân tích các trò chơi vô tư trong lý thuyết trò chơi kết hợp .
Mục tiêu của bạn là viết một chương trình hoặc hàm được đặt tên để tính toán mex bằng cách sử dụng càng ít byte càng tốt.
Đầu vào:
Một danh sách các số nguyên không âm theo thứ tự bất kỳ. Có thể chứa lặp lại. Để cụ thể, độ dài của danh sách và phạm vi cho phép của các yếu tố sẽ nằm giữa 0
và 20
bao gồm.
Định nghĩa của "danh sách" ở đây là linh hoạt. Bất kỳ cấu trúc nào đại diện cho một tập hợp các số đều ổn, miễn là nó có thứ tự cố định các phần tử và cho phép lặp lại. Nó có thể không bao gồm bất kỳ thông tin phụ trợ ngoại trừ chiều dài của nó.
Đầu vào có thể được lấy làm đối số chức năng hoặc thông qua STDIN.
Đầu ra
Số loại trừ nhỏ nhất. Đầu ra hoặc in nó.
Các trường hợp thử nghiệm
[1]
0
[0]
1
[2, 0]
1
[3, 1, 0, 1, 3, 3]
2
[]
0
[1, 2, 3]
0
[5, 4, 1, 5, 4, 8, 2, 1, 5, 4, 0, 7, 7]
3
[3, 2, 1, 0]
4
[0, 0, 1, 1, 2, 2, 3]
4
[1, 0, 7, 6, 3, 11, 15, 1, 9, 2, 3, 1, 5, 2, 3, 4, 6, 8, 1, 18]
10
0
tới 20
, sản lượng chính xác là 21. Tôi sẽ thêm một trường hợp thử nghiệm. Có, phạm vi cố định chắc chắn làm cho nó dễ dàng hơn, mặc dù người ta vẫn có thể sử dụng sys.maxint
hoặc 2**64
nếu tôi không chỉ định nó.