Jak najít součet všech možných subarrays

Příklady kódu

0
0

najít pole s daným součtem

import java.sql.Array;
import java.util.ArrayList;
import java.util.Arrays;

public class FindSubArr {
    public static void main(String[] args) {
        int [] arr = {0,1,2,3,4,5,6,9,2,1,1,1,10,2,2,2};
        int s = 6 ;
        int [] sub = findLongestSubArray( arr,s);
        System.out.println("longest SubArray Range ==> "+Arrays.toString(sub));

    }

    public static int[] findLongestSubArray(int [] arr, int s){

        int[] result = new int[]{-1};
        int sum=0,left=0,right=0;

        while(right < arr.length){
            sum += arr[right];
            while(left < right && sum > s){
                sum -= arr[left++];
            }
            if(sum == s && (result.length == 1 || result[1] - result[0] < right - left)){
                result = new int[]{left + 1, right +1};
            }
            right++;
        }
        return result;
    }
}

Související stránky

Související stránky s příklady

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
English
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................
Балгарскі
..................................................................................................................
Íslensk
..................................................................................................................