A staircase has n steps. You can scale the stairs by taking steps one or two at a time. How many ways are there to scale the steps?

If there are 0 steps, there is 1 possibility (you are already done).If there is 1 step, there is 1 possibility (you take one step).If there are n steps, your first choice is either 1 step or 2 steps:Choice 1: the problem now exists for n-1 stepsChoice 2: the problem now exists for n-2 stepsLet f(x) be the number of ways of scaling x steps. You can now say that f(x) = f(x-1) + f(x-2) - the Fibonacci sequence.This is an example of a dynamic programming question - a computer science topic for first-year Cambridge computer scientists, and my first interview question.

Related Oxbridge Preparation Mentoring answers

All answers ▸

What is faith?


Suppose we complete a rectangle of dimensions m*n by the following rule: everytime we complete a square, we put in an number from 0 to 4 equal to the number of adjacent squares already completed. What can we say about the sum of the numbers in all squares


How can I prepare for interviews?


What will Oxbridge interviewers want to talk to me about?