It took me 30 minutes because I'm out of interviewing practice mode, and I was pair-programming with a backend/infrastructure dev :). When I tried it alone, I did it in about 7 minutes.
Would you agree that 15 minutes is enough to get a sense of the candidate's approach, and be able to tell whether or not they'd be able to solve it given 45 minutes?