public int climbStairs(int n) {
        if(n == 1 || n == 2) return n;
        if(memo.containsKey(n)) return memo.get(n);
        memo.put(n, climbStairs(n - 2) + climbStairs(n - 1));
        return memo.get(n);
    }