fork download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4.  
  5. class Codechef
  6. {
  7. public static void main (String[] args) throws java.lang.Exception
  8. {
  9. /*
  10. number of unordered quadruplets (i,j,k,l) such that b[i] + b[j] + b[k] + b[l] = 0
  11.  
  12. */
  13.  
  14.  
  15. //O(n^4) ;
  16. Scanner sc = new Scanner(System.in) ;
  17. int n = sc.nextInt() ;
  18. int arr[] = new int[n] ;
  19.  
  20. for(int i = 0 ; i < n ; i++) {
  21. arr[i] = sc.nextInt() ;
  22. }
  23.  
  24.  
  25. Map<Integer , Integer > map = new HashMap<>() ;
  26.  
  27. for(int i = 2 ; i < n ; i++) {
  28. for(int j = i + 1 ; j < n ; j++) {
  29. map.put(arr[i] + arr[j] , map.getOrDefault(arr[i] + arr[j] , 0) + 1) ;
  30. }
  31. }
  32. int count = 0 ;
  33.  
  34.  
  35. for(int i = 1 ; i < n - 1; i++) {
  36. for(int j = 0 ; j < i ; j++ ) {
  37. int sum = 0 - (arr[i] + arr[j] );
  38. if(map.containsKey(sum)) {
  39. count += map.get(sum) ;
  40. }
  41. }
  42.  
  43. for(int k = i + 2 ; k < n ; k++) { //remove pair for that element wich is going to become i next
  44. map.put(arr[i+1] + arr[k] , map.get(arr[i+1] + arr[k] ) - 1 ) ;
  45. }
  46. }
  47.  
  48. System.out.println(count);
  49. }
  50. }
  51.  
Runtime error #stdin #stdout #stderr 0.18s 54468KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Exception in thread "main" java.util.NoSuchElementException
	at java.base/java.util.Scanner.throwFor(Scanner.java:937)
	at java.base/java.util.Scanner.next(Scanner.java:1594)
	at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
	at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
	at Codechef.main(Main.java:17)