Tôi có một vấn đề về tổ hợp mà tôi muốn đặt ra cho vấn đề OEIS , đó là tôi không có đủ điều khoản. Thử thách mã này là để giúp tôi tính toán nhiều thuật ngữ hơn và người chiến thắng sẽ là người dùng có bài nộp chứa số lượng điều khoản lớn nhất.
Vấn đề
Giả sử tôi cung cấp cho bạn một mảng hình tam giác của bóng đèn có chiều dài cạnh :
o
o o
o o o
o o o o
o o o o o
o o o o o o
1 2 ... n
Tôi sẽ bật ba bóng đèn tạo thành một tam giác đều "thẳng đứng" như trong ví dụ sau:
o
o x
o o o
o o o o
o x o o x
o o o o o o
Trước khi tôi bật đèn, công việc của bạn là loại bỏ càng nhiều bóng đèn càng tốt khỏi mảng mà không làm mất khả năng suy ra tam giác của bóng đèn đã được bật. Để rõ ràng, nếu một bóng đèn đã được gỡ bỏ, nó sẽ không sáng khi vị trí của nó được bật.
Ví dụ: nếu bạn loại bỏ các bóng đèn sau (được đánh dấu bởi .
), bạn sẽ chỉ thấy hai đèn sau bật (được đánh dấu bởi x
), đủ để suy ra vị trí thứ ba (không sáng):
. .
. o . x
. . o . . o
o o o . => o o o .
o o o o . o x o o . <- the third unlit position
o . . . o o o . . . o o
Hãy a(n)
là số lượng bóng đèn tối đa có thể được loại bỏ mà không đưa ra bất kỳ sự mơ hồ nào.
Thí dụ
Với thuật toán ngây thơ, tôi đã kiểm tra các giá trị lên đến một hình tam giác có cạnh dài 7, như được thấy dưới đây:
.
. . o
. . o o . o
. . . . . o . o o .
. . . . o o o o o . o o . o .
. . . . o o o o . o o o o o . o . o . o o
. . . o o . o o o o . . o o o . . . o o o . o . o o o
a(2) = 3 a(3) = 4 a(4) = 5 a(5) = 7 a(6) = 9 a(7) = 11
Chấm điểm
Bài nộp tính toán chuỗi [a(2), a(3), ..., a(n)]
cho n lớn nhất sẽ thắng. Nếu hai bài nộp có trình tự giống hệt nhau, thì bài được đăng trước đó sẽ thắng.
Mặc dù không cần thiết cho việc đệ trình, nhưng nó sẽ mang tính hướng dẫn cho tôi nếu bạn đăng một cấu trúc của các mảng tam giác kết quả, như trong ví dụ trên.