Skip to main content

Climb Stairs

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. In one move, you are allowed to climb 1, 2 or 3 stairs.

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

Input Format

A number n

Output Format

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


Constraints

0 <= n <= 20

Sample Input

4

Sample Output

7


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();
        System.out.println(WaysUp(n));
    }

    public static int WaysUp(int n){
        if(n == 0)  return 0;
        else if(n<0)    return -1;
        int[] A = new int[n+1];
        A[0] = 1;
        for(int i=1;i<=n;i++){
            A[i] = A[i-1];
            if(i>= 2)
                A[i] += A[i-2];
            if(i>=3)
                A[i] += A[i-3];
        }
        return A[n];
    }
}

Comments

Must Read:

Count A+b+c+ Subsequences

 1. You are given a string str. 2. You are required to calculate and print the count of subsequences of the nature a+b+c+. For abbc -> there are 3 subsequences. abc, abc, abbc For abcabc -> there are 7 subsequences. abc, abc, abbc, aabc, abcc, abc, abc. Input Format A string str Output Format count of subsequences of the nature a+b+c+ Constraints 0 < str.length <= 10 Sample Input abcabc Sample Output 7 Solution: import java.io.*; import java.util.*; public class Main {     public static void main(String[] args) throws Exception {         Scanner sc = new Scanner(System.in);         String str = sc.nextLine();         int counta = 0, countb = 0, countc = 0;         for(int i=0;i<str.length();i++){             char ch = str.charAt(i);             if(ch == 'a')                 ++coun...

Software Engineering Concepts Basics Of Testing Basics Of Testing | Quiz 2

Software Engineering Concepts  Basics Of Testing  Basics Of Testing Quiz 2

Bubble Sort

1. You are given an array(arr) of integers. 2. You have to sort the given array in increasing order using bubble sort. Input Format An Integer n  arr1 arr2.. n integers Output Format Check the sample ouput and question video. Constraints 1 <= N <= 10000 -10^9 <= arr[i] <= 10^9 Sample Input 5 7  -2  4  1  3 Sample Output Comparing -2 and 7 Swapping -2 and 7 Comparing 4 and 7 Swapping 4 and 7 Comparing 1 and 7 Swapping 1 and 7 Comparing 3 and 7 Swapping 3 and 7 Comparing 4 and -2 Comparing 1 and 4 Swapping 1 and 4 Comparing 3 and 4 Swapping 3 and 4 Comparing 1 and -2 Comparing 3 and 1 Comparing 1 and -2 -2 1 3 4 7 Solution: import java.io.*; import java.util.*; public class Main {   public static void bubbleSort(int[] arr) {     //write your code here     for(int i=0;i<arr.length;i++){         for(int j=1;j<arr.length-i;j++)             if(isSmaller(arr,j,j-1)){   ...

Coin Change Permutations

 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 permutations 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 permutations and not combinations 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 3 and not 1. Input Format A number n n1 n2 .. n number of elements A number amt Output Format A number representing the cou...

Butterfly Pattern

  /* @ToDo  Butterfly Pattern     *                                   *     *   *                           *   *     *   *   *                   *   *   *     *   *   *   *           *   *   *   *     *   *   *...

Floyd's Triangle

/*  To Print Floyd's Triangle 1    2   3    4   5   6    7   8   9   10   11  12  13  14  15   */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     // Code here!!      int   n ;  cin >> n ;      int   count  =  1 ;      for ( int   i = 0 ; i < n ; i ++){          for ( int   j = 0 ; ...

Inverted Pattern

  /* @ToDo  Inverted Pattern 1   2   3   4   5    1   2   3   4    1   2   3    1   2    1    */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     // Code here!!      int   n ;  cin >> n ;      for ( int   i = 0 ; i < n ; i ++){          for ( int   j = 1 ; j <= n - i ; j ++)  ...

0-1 Pattern

  /* @ToDo  0-1 Pattern     1     0   1     0   1   0     1   0   1   0     1   0   1   0   1 */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     // Code here!!      int   n ;  cin >> n ;      int   sign  =  1 ;      for ( int   i = 1 ; i <= n ; i ++){    ...

Pattern

  /* To print Pattern:                     *                 *   *             *   *   *         *   *   *   *     *   *   *   *   * */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     //...

Subscribe to Get's Answer by Email