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.
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(); } }
TQ
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);
}
}