boolean find(int[] arr, int sum){
        if(arr!=null && arr.length>0){
            int[][] dp = new int[arr.length][sum+1];
            if(arr[0]<=sum)
                dp[0][arr[0]]=1;
            for(int j=0;j<sum+1;j++){
                for(int i=1;i<arr.length;i++){
                    if(j==arr[i] || dp[i-1][j]==1 || (j-arr[i]>=0 && dp[i][j-arr[i]]==1))
                        dp[i][j]=1;


                }
            }
            return (dp[arr.length-1][sum]==1);
        }
        return false;
    }