Skip to content

Instantly share code, notes, and snippets.

@AriTedeschi
Created April 15, 2024 01:51
Show Gist options
  • Save AriTedeschi/8aeb22ed44631b2b91958f40d8b4f1ca to your computer and use it in GitHub Desktop.
Save AriTedeschi/8aeb22ed44631b2b91958f40d8b4f1ca to your computer and use it in GitHub Desktop.
PrefixSumResolution
import java.util.List;
import java.util.ArrayList;
public class Main
{
public static int prefixSum(List<Integer> numbers, int head, int tail){
List<Integer> factorialList = new ArrayList<>();
Integer total = 0;
for(Integer e : numbers){
total += e;
factorialList.add(total);
}
if(head > 0 && tail > 0)
return factorialList.get(tail) - factorialList.get(head-1);
return factorialList.get(head | tail);
}
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);
//In order to work number list must be sorted!
//[1 2 3 4 5]
System.out.println(""+prefixSum(numbers,0,4));
//[2 3 4 5]
System.out.println(""+prefixSum(numbers,1,4));
//[2 3 4]
System.out.println(""+prefixSum(numbers,1,3));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment