Untitled

 avatar
unknown
plain_text
5 months ago
695 B
2
Indexable
public static int getTripletCount(List<Integer> a, int d) {
    int n = a.size();
    int count = 0;

    // Convert list to array for faster access
    int[] arr = a.stream().mapToInt(Integer::intValue).toArray();

    // Iterate over all pairs (i, j) and find suitable k
    for (int i = 0; i < n - 2; i++) {
        for (int j = i + 1; j < n - 1; j++) {
            // Calculate current sum of elements at i and j
            int currentSum = arr[i] + arr[j];

            // Find appropriate k
            for (int k = j + 1; k < n; k++) {
                if ((currentSum + arr[k]) % d == 0) {
                    count++;
                }
            }
        }
    }

    return count;
}
Editor is loading...
Leave a Comment