operator[] wrote:I'm thinking of two numbers (x, y) from a large set {1..N}, and you want to find them. At your disposal is the ability to ask questions about subsets S ⊆ {1..N}. For each such question I will (adversarially) pick one of my two numbers, and answer with either (x in S) or (y in S), without telling you which number I answered for. So for instance, if N = 5 and I'm thinking of the numbers 2 and 3, I'm required to answer true for the query {1,2,3}, but for {1,2,4} I can give any answer I like.

After asking as many questions as you like, you may name a number, and you win if your number is one of (x, y), and lose if it's not.

Do you have a winning strategy?

There's also a followup question, but it gives away the answer to the original question.

**Spoiler:**