Hackerrank Java Loops II Solution
We use the integers , , and to create the following series:
You are given queries in the form of , , and . For each query, print the series corresponding to the given , , and values as a single line of space-separated integers.
Input Format
The first line contains an integer, , denoting the number of queries.
Each line of the subsequent lines contains three space-separated integers describing the respective , , and values for that query.
Constraints
Output Format
For each query, print the corresponding series on a new line. Each series must be printed in order as a single line of space-separated integers.
Sample Input
2
0 2 10
5 3 5
Sample Output
2 6 14 30 62 126 254 510 1022 2046
8 14 26 50 98
Explanation
We have two queries:
We use , , and to produce some series :
... and so on.
Once we hit , we print the first ten terms as a single line of space-separated integers.
We use , , and to produce some series :
- We then print each element of our series as a single line of space-separated values.
Solution in java8
Approach 1.
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int testCases = sc.nextInt();
for (int i = 0; i < testCases; i++) {
int a = sc.nextInt();
int b = sc.nextInt();
int n = sc.nextInt();
int sum = a;
for (int j = 0; j < n; j++) {
sum += b * Math.pow(2, j);
System.out.print(sum + " ");
}
System.out.println();
}
}
}
Approach 2.
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner (System.in);
int t = sc.nextInt();
for (int i = 0; i < t; i++) {
int a = sc.nextInt();
int b = sc.nextInt();
int n = sc.nextInt();
for (int j = 0; j < n; j++) {
a += (int) Math.pow(2, j)*b;
System.out.print(a +" ");
}
System.out.println();
}
}
}
Approach 3.
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int j = sc.nextInt();
for (int i = 0; i < j; i++) {
int a = sc.nextInt();
int b = sc.nextInt();
int n = sc.nextInt();
int x = 1;
int o = a;
for (int k = 0; k < n; k++) {
o = o + x * b;
System.out.print(o);
x = x << 1;
System.out.print(' ');
}
System.out.println();
}
}
}