fork download
  1. import java.util.List;
  2. import java.util.Scanner;
  3. import java.io.OutputStream;
  4. import java.io.IOException;
  5. import java.io.PrintWriter;
  6. import java.util.ArrayList;
  7. import java.util.Collections;
  8. import java.io.InputStream;
  9.  
  10. /**
  11.  * Built using CHelper plug-in
  12.  * Actual solution is at the top
  13.  */
  14. public class Main {
  15. public static void main(String[] args) {
  16. InputStream inputStream = System.in;
  17. OutputStream outputStream = System.out;
  18. Scanner in = new Scanner(inputStream);
  19. PrintWriter out = new PrintWriter(outputStream);
  20. ABCDEF solver = new ABCDEF();
  21. solver.solve(1, in, out);
  22. out.close();
  23. }
  24. }
  25.  
  26. class ABCDEF {
  27. public void solve(int testNumber, Scanner in, PrintWriter out) {
  28. int n;
  29. n = in.nextInt();
  30.  
  31. int[] a = new int[n];
  32. for (int i = 0; i < n; i++) {
  33. a[i] = in.nextInt();
  34. }
  35.  
  36. ArrayList<Integer> left = new ArrayList<Integer>(1000000);
  37. ArrayList<Integer> right = new ArrayList<Integer>(1000000);
  38.  
  39. for (int i = 0; i < n; i++) {
  40. for (int j = 0; j < n; j++) {
  41. for (int k = 0; k < n; k++) {
  42. left.add(a[i] * a[j] + a[k]);
  43. if (a[i] != 0) {
  44. right.add(a[i] * (a[j] + a[k]));
  45. }
  46. }
  47. }
  48. }
  49.  
  50. Collections.sort(left);
  51. Collections.sort(right);
  52.  
  53. int lIndex = 0, rIndex = 0;
  54. int res = 0;
  55.  
  56. while (lIndex < left.size() && rIndex < right.size()) {
  57. if (left.get(lIndex) == right.get(rIndex)) {
  58. int lSize = 0, lEl = left.get(lIndex);
  59. int rSize = 0, rEl = right.get(rIndex);
  60. do {
  61. ++lSize;
  62. ++lIndex;
  63. } while (lIndex < left.size() && left.get(lIndex) == lEl);
  64.  
  65. do {
  66. ++rSize;
  67. ++rIndex;
  68. } while (rIndex < right.size() && right.get(rIndex) == rEl);
  69.  
  70. res += lSize * rSize;
  71. } else if (left.get(lIndex) < right.get(rIndex)) {
  72. ++lIndex;
  73. } else {
  74. ++rIndex;
  75. }
  76. }
  77.  
  78. out.println(res);
  79. }
  80. }
  81.  
  82.  
Runtime error #stdin #stdout #stderr 0.14s 321088KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Exception in thread "main" java.util.NoSuchElementException
	at java.util.Scanner.throwFor(Scanner.java:862)
	at java.util.Scanner.next(Scanner.java:1485)
	at java.util.Scanner.nextInt(Scanner.java:2117)
	at java.util.Scanner.nextInt(Scanner.java:2076)
	at ABCDEF.solve(Main.java:29)
	at Main.main(Main.java:21)