Header Ad

HackerRank Java Loops II problem solution

In this HackerRank Java Loops II problem solution in the java programming language, You are given q queries in the form of a, b, and n. For each query, print the series corresponding to the given a, b, and n values as a single line of n space-separated integers.

HackerRank Java Loops II problem solution


HackerRank Java Loops II problem solution.

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

class Solution{
    public static void main(String []argh){
        Scanner in = new Scanner(System.in);
        int t=in.nextInt();
        for(int i=0;i<t;i++){
            int a = in.nextInt();
            int b = in.nextInt();
            int n = in.nextInt();            
            int sum = a;
            for (int j = 0; j<n; j++) {                
                int nextEle = (int)Math.pow(2, j)*b;
                sum = sum + nextEle;
                System.out.printf("%s ",sum);                                
            }
            if (i < t-1) {
                System.out.print("\n");
            }
            
        }
        in.close();       

    }
}



Second solution in java8 programming.

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

public class Solution {

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int tests = scan.nextInt();
        int a, b, n;
        for (int t = 0; t < tests; t++) {
            a = scan.nextInt();
            b = scan.nextInt();
            n = scan.nextInt();
            loop(a, b, n);
        }
    }
    
    static void loop(int a, int b, int n) {
        int sum = a;
        for (int x = 0; x < n; x++) {
            sum += b * (1<<x);
            System.out.print(sum + " ");
        }
        System.out.println();
    }
}

Post a Comment

2 Comments

  1. Recursividade.
    class Solution{
    public static void main(String []argh){
    Scanner in = new Scanner(System.in);
    int t=in.nextInt();
    for(int i=0;i<t;i++){
    int a = in.nextInt();
    int b = in.nextInt();
    int n = in.nextInt();

    System.out.println(found(a, b, n));

    }
    in.close();
    }

    public static int found(int acc, int mult, int qty) {
    acc = acc + mult;
    if (qty == 1) return acc;
    System.out.print(acc + " ");
    return found(acc, (2*mult), --qty);
    }
    }

    ReplyDelete