Đưa ra một đầu vào của hai chuỗi với chuỗi các dấu gạch dưới đại diện cho các từ tương ứng, xuất ra các câu với "khoảng trống" được điền vào.
Cách tốt nhất để mô tả thách thức này là ví dụ. Đây là một ví dụ đầu vào:
programming _____________ and code golf
programming puzzles ______ code ____
Và đây là đầu ra tương ứng:
programming ___puzzles___ and code golf
programming puzzles _and__ code golf
Đối với mục đích của thử thách này, một "từ" được định nghĩa là một chuỗi gồm một hoặc nhiều chữ cái viết thường và "trống" được định nghĩa là một hoặc nhiều dấu gạch dưới (đầu vào sẽ luôn chỉ chứa các chữ cái viết thường, dấu cách và dấu gạch dưới) . Các từ và khoảng trống trong các chuỗi đầu vào được phân tách bằng các khoảng trắng đơn và tổng số lượng từ và khoảng trống trong các câu sẽ luôn bằng nhau.
Mục tiêu của thử thách là lấp đầy tất cả các khoảng trống bằng các từ đúng , đó là các từ chiếm cùng một chỉ mục trong chuỗi khác khi được phân tách bằng khoảng trắng.
Từ này phải được tập trung vào chỗ trống, như được hiển thị với từ "câu đố" trong ví dụ ở trên, một số dấu gạch dưới bằng nhau vẫn còn ở hai bên.
Nếu từ không thể được căn giữa chính xác, dấu gạch dưới có thể đi ở bên trái hoặc bên phải (ví dụ: từ "và" trong ví dụ trên).
Sẽ luôn có đủ dấu gạch dưới cho từ phù hợp, nhưng có thể có chính xác bằng độ dài của từ (ví dụ: từ "golf" trong ví dụ trên).
Sẽ không bao giờ có một khoảng trống ở cùng một vị trí trong cả hai chuỗi.
Đầu vào / đầu ra có thể là một trong những điều sau đây (đầu vào / đầu ra không nhất thiết phải thông qua cùng một phương thức):
một chuỗi được phân tách bằng bất kỳ ký tự nào không phải là chữ cái, dấu cách hoặc dấu gạch dưới (ví dụ: chuỗi mới hoặc chuỗi được phân tách bằng dấu phẩy)
một mảng / danh sách / vv. của hai chuỗi
hai đối số dòng lệnh / hàm (chỉ nhập)
Vì đây là môn đánh gôn , mã ngắn nhất tính bằng byte sẽ giành chiến thắng.
Ví dụ trên có thể được sử dụng như một trường hợp thử nghiệm. Dưới đây là trường hợp thử nghiệm lớn hơn (chuỗi thứ hai trong đầu ra có thể thay đổi đôi chút do hành vi định tâm khác nhau):
lorem _____ dolor _____ amet _______________ adipiscing elit mauris dapibus tincidunt _____________________________ accumsan fringilla proin vulputate viverra lorem fermentum dictum
lorem ipsum ______ sit _______ consectetur _______________ elit mauris dapibus tincidunt metus accumsan fringilla proin vulputate viverra lorem ____________________________ dictum
lorem ipsum dolor _sit_ amet __consectetur__ adipiscing elit mauris dapibus tincidunt ____________metus____________ accumsan fringilla proin vulputate viverra lorem fermentum dictum
lorem ipsum dolor_ sit _amet__ consectetur __adipiscing___ elit mauris dapibus tincidunt metus accumsan fringilla proin vulputate viverra lorem _________fermentum__________ dictum