1. You are given a number n, representing the count of elements.
2. You are given n numbers.
3. You are required to print all subsets of arr. Each subset should be
on separate line. For more clarity check out sample input and output.
Input Format
A number n
n1
n2
.. n number of elements
Output Format
[Tab separated elements of subset]
..
All subsets
Constraints
1 <= n <= 10
0 <= n1, n2, .. n elements <= 10^3
Sample Input
3
10
20
30
Sample Output
- - -
- - 30
- 20 -
- 20 30
10 - -
10 - 30
10 20 -
10 20 30
Solution:
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws Exception {
// write your code here
Scanner scn = new Scanner(System.in);
int n= scn.nextInt();
int[] A = new int[n];
for(int i=0;i<n;i++)
A[i] = scn.nextInt();
int num = (int)Math.pow(2,n);
for(int i=0;i<num;i++){
String str = "";
int temp = i;
for(int j=n-1;j>=0;j--){
int pos = temp%2;
temp/=2;
if(pos == 1){
str = A[j] + "\t" + str;
}else{
str = "-\t" + str;
}
}
System.out.println(str);
}
}
}
Comments
Post a Comment