import java.util.*;
public class Solution { public ArrayList<ArrayList> subsets(int[] S) { int len = S.length; ArrayList<ArrayList> res = new ArrayList<>(); res.add(new ArrayList()); for(int i = 0;i < len; i++){ int size = res.size(); for(int j = 0;j < size;j++){ ArrayList list = new ArrayList<>(); list.addAll(res.get(j)); list.add(S[i]); res.add(list); } } return res; } }