Đây là một thử thách cảnh sát và tên cướp . Chủ đề của cảnh sát cho thách thức này là ở đây
Một câu hỏi thú vị để suy nghĩ là:
Nếu tôi có một dãy số thì tôi phải cung cấp bao nhiêu trong số chúng trước khi rõ ràng tôi đang nói về dãy số nào?
Ví dụ: nếu tôi muốn nói về các số nguyên dương theo thứ tự bắt đầu từ , tôi có thể nói , nhưng điều đó có thực sự đủ?
Tôi có một cách để trả lời câu hỏi này, và là một người chơi gôn mã Nó liên quan đến môn đánh gôn. Bạn đã cung cấp đủ các điều khoản của một chuỗi nếu mã ngắn nhất tạo ra các thuật ngữ đó tạo ra tất cả các điều khoản của chuỗi. Nếu chúng tôi nghĩ về điều này về mặt golf-mã, điều này có nghĩa là bạn đã cung cấp đủ các trường hợp thử nghiệm sao cho mã ngắn nhất vượt qua các trường hợp thử nghiệm thực hiện nhiệm vụ mong muốn.
Thử thách
Thử thách này là một thử thách cảnh sát và cướp . Trong đó cảnh sát sẽ trình bày các trường hợp thử nghiệm và những tên cướp sẽ phải tìm một cách ngắn hơn để giả mạo các trường hợp thử nghiệm khác với chuỗi dự định. Cảnh sát sẽ trình bày những điều sau đây:
Một đoạn mã lấy số nguyên dương làm đầu vào và tạo ra một số nguyên làm đầu ra. Mã này có thể bằng 0 hoặc một chỉ mục nhưng cần phải rõ chỉ mục là gì. Mã này sẽ xác định trình tự của bạn.
Bất kỳ yêu cầu về nền tảng hoặc ngôn ngữ có liên quan có thể ảnh hưởng đến đầu ra, ví dụ như kích thước của longint.
Một số , cùng với n đầu tiên về trình tự theo tính toán của các mã. Chúng sẽ hoạt động như "trường hợp thử nghiệm".
Những tên cướp sẽ tìm thấy một chương trình có cùng ngôn ngữ ngắn hơn chương trình được trình bày và vượt qua tất cả các trường hợp thử nghiệm (tạo ra cùng một đầu ra cho đầu vào đầu tiên dưới dạng mã của cảnh sát). Mã của tên cướp cũng phải khác về đầu ra so với chương trình của cảnh sát đối với một số lượng lớn hơn .
Chấm điểm
Những tên cướp sẽ được ghi điểm về số lượng vết nứt mà chúng tìm thấy với nhiều vết nứt sẽ tốt hơn. Một câu trả lời có thể bị bẻ khóa một lần nữa bằng cách tìm một câu trả lời hợp lệ ngắn hơn vết nứt ban đầu. Nếu một câu trả lời bị bẻ khóa lần thứ hai, điểm được trao cho người bẻ khóa thứ hai chứ không phải lần đầu tiên.