Skip to main content

Climb Stairs With Variable Jumps

 1. You are given a number n, representing the number of stairs in a staircase.

2. You are on the 0th step and are required to climb to the top.

3. You are given n numbers, where ith element's value represents - till how far from the step you 

     could jump to in a single move.  

     You can of course jump fewer number of steps in the move.

4. You are required to print the number of different paths via which you can climb to the top.

Input Format

A number n

.. n more elements

Output Format

A number representing the number of ways to climb the stairs from 0 to top.


Constraints

0 <= n <= 20

0 <= n1, n2, .. <= 20

Sample Input

10

3

3

0

2

1

2

4

2

0

0

Sample Output

5

Solution:

import java.io.*;
import java.util.*;

public class Main {

    public static void main(String[] args) throws Exception {
        // write your code here
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] arr = new int[n];
        for(int i=0;i<n;i++)
            arr[i] = sc.nextInt();
        System.out.println(waysUp(n,arr));
    }
    
    public static int waysUp(int n, int[] arr){
        if(n<=0)    return 0;
        int[] A = new int[n+1];
        A[n] = 1;
        for(int i=n-1;i>=0;i--){
            int j = arr[i];
            while(j != 0){
                if(i+j <= n)
                    A[i] += A[i+j];
                j--;
            }
        }
        return A[0];
    }

}

Comments

Must Read:

Number Pattern

  /* @ToDo     Number Pattern                 1                    1       2                1       2       3            1       2       3       4        1       2       3       4       5            */ #include   <iost...

RDBMS Data Definition Language | Create Sales_info table

  Write a query to create Sales_info with constraints mentioned. Refer the below schema  Result Description Summary of tests +------------------------------+ | 3 tests run / 3 test passed | +------------------------------+

Software Engineering Concepts Requirement Analysis Pre-Quiz

  Software Engineering Concepts       Requirement Analysis            Pre-Quiz

Software Engineering Concepts Configuration Management And Version Control Post-Quiz

 Software Engineering Concepts       Configuration Management And Version Control            Post-Quiz

Algorithm Analysis and Design Concepts Data Structure and Algorithms Pre-Quiz

Algorithm Analysis and Design Concepts       Data Structure and Algorithms            Pre-Quiz  

UNIX Introduction to Unix | Post-Quiz

 UNIX  Introduction to Unix  Post-Quiz  Feedback Congratulations! You have passed by securing more that 80%. Question  1 Correct Mark 1.00 out of 1.00 Flag question Question text  What is the default maximum number of processes that can exist in Unix? Select one: a.  unlimited b.   32768           c.   4096        d.  1024          Feedback Your answer is correct. The correct answer is:  32768         Question  2 Correct Mark 1.00 out of 1.00 Flag question Question text Single user mode shell has _____ prompt.  Select one: a.   $ Normal user  b.  % Admin user c.  ~ Home user d.  # Root user    Feedback Your answer is correct. The correct answer is: # Root user  Question  3 Correct Mark 1.00 out of 1.00 Flag question Question text Predict the output for the following...

Coin Change Combination

1. You are given a number n, representing the count of coins. 2. You are given n numbers, representing the denominations of n coins. 3. You are given a number "amt". 4. You are required to calculate and print the number of combinations of the n coins using which the       amount "amt" can be paid. Note 1: You have an infinite supply of each coin denomination i.e. same coin denomination can be                    used for many installments in payment of "amt" Note 2: You are required to find the count of combinations and not permutations i.e.                   2 + 2 + 3 = 7 and 2 + 3 + 2 = 7 and 3 + 2 + 2 = 7 are different permutations of same                    combination. You should treat them as 1 and not 3. Input Format A number n n1 n2 .. n number of elements A number amt Output Format A number representing the count of ...

RDBMS Data Definition Language | Alter - Establish Referential Integrity Constraint

RDBMS  Data Definition Language  Alter - Establish Referential Integrity Constraint Identify the common key between the customer_info and Sales_info tables and establish referential integrity constraint between them. Give the constraint name as FK_KEY. Evaluation Result: Result Description Summary of tests +------------------------------+ | 3 tests run / 3 test passed | +------------------------------+

Data Formats ( XML & JSON ) XML AND JSON | Generate XSD For Breakfast Menu

  Generate XSD For Breakfast Menu Generate XSD for the given XML document <?xml version="1.0" encoding="UTF-8"?> <breakfast_menu> <food> <name>Turfle waffles</name> <price>$5.95</price> <description>This two turfle which has 2 famous product  is with real choco and maple syrup</description> <calories>650</calories> </food> <food> <name>Strawberry Belgian Waffles</name> <price>$24.6</price> <description>Light Belgian waffles covered with strawberries and whipped cream</description> <calories>900</calories> </food> <food> <name>Berry-Berry Belgian Waffles</name> <price>$4.78</price> <description>Light Belgian waffles covered with an assortment of fresh berries and whipped cream</description> <calories>400</calories> </food> <food> <name>Fried Toast</name> <pr...

Subscribe to Get's Answer by Email