You are on page 1of 1

public class Solution {

static boolean flag=false;


public static boolean isSubsetPresent(int n, int k,int []a) {
// Write your code here
helper(a,0,0,k);
return flag;
}
public static void helper(int[] a,int idx,int ssf,int k){
if(ssf>k) return;
if(ssf==k){
flag=true;
return;
}
if(idx==a.length) return;
helper(a,idx+1,ssf+a[idx],k);
if(flag) return;
helper(a,idx+1,ssf,k);

}
}

import java.util.*;

public class Solution {


public static List< String > generateString(int n) {
// Write your code here.
return helper(n);
}
public static List<String> helper(int n){
if(n==1){
List<String> bres=new ArrayList<>();
bres.add("0");
bres.add("1");
return bres;
}
List<String> rres=helper(n-1);
List<String> fres=new ArrayList<>();
for(String str:rres){
fres.add(str+"0");
if(str.charAt(str.length()-1)!='1'){
fres.add(str+"1");
}
}
return fres;
}
}

You might also like