this is not right, you should always consider the real world scenario when making such decisions .
if you imagine you and another guy are in a shop and there is only one pack of chips left, and you are the first person to take that pack, the other person has the choice of i) waiting to see if you are going to buy that or
ii) he can come back later and check the availability of that pack again,
but it is "physically" impossible for both of you to put that same pack in both baskets.
the reason I am emphasising on the word "physically" is that all the templates, patterns and scenarios that we are using in software industry are coming from real world examples, this question is a functional requirement type question, but even design patterns that we use within our designs, are initiated from construction industry,so you should always consider real-world examples ,