Một cách tiếp cận dễ nhớ và dễ hiểu trong một cuộc phỏng vấn sẽ là sử dụng thực tế là nếu bạn nhìn vào tất cả các số trong N bit, mỗi bit sẽ được đặt chính xác bằng một nửa các giá trị đó và không được đặt trong nửa còn lại .
Nếu bạn lặp lại tất cả các giá trị trong tệp và giữ 32 số giá trị ở cuối, bạn sẽ kết thúc với 32 giá trị chính xác (2 ^ 32/2) hoặc thấp hơn một chút so với giá trị đó. Sự khác biệt tối đa (2 ^ 32/2) và tổng cung cấp cho bạn tổng số bit được đặt ở mỗi vị trí của các giá trị bị thiếu.
Khi bạn đã có điều đó, bạn có thể xác định tất cả các bộ 4 giá trị có thể có cho các tổng đó. Do đó, bạn có thể kiểm tra lại các giá trị trong tệp một lần nữa xem có bất kỳ giá trị nào là một phần của các kết hợp đó không. Khi bạn tìm thấy một, các kết hợp có chứa giá trị đó sẽ bị loại trừ dưới dạng khả năng. Khi bạn chỉ còn một kết hợp có thể, bạn có câu trả lời.
Ví dụ: sử dụng một nibble, bạn có các giá trị sau:
1010
0110
1111
0111
1101
1001
0100
0101
0001
1011
1100
1110
Tổng số bit được đặt ở mỗi vị trí là:
7867
Trừ đi những người từ 8 (4 ^ 2/2) chúng tôi nhận được:
1021
Điều đó có nghĩa là có 4 bộ giá trị sau:
1000
0000
0011
0010
1010
0001
0010
0000
(tha thứ cho tôi nếu tôi bỏ lỡ bất kỳ, tôi chỉ làm điều này bằng mắt thường)
Và sau đó nhìn vào các số ban đầu một lần nữa, chúng tôi tìm thấy 1010 ngay lập tức có nghĩa là tập đầu tiên là câu trả lời.