1395. Count Number of Teams

Question

CleanShot 2024-11-11 at 12.34.56@2x.png

Code

class Solution:
    def numTeams(self, rating: List[int]) -> int:
        R = len(rating)

        smaller = [[0, 0] for _ in range(R)]
        larger = [[0, 0] for _ in range(R)]

        for i in range(R):
            for j in range(R):
                if i == j:
                    continue

                if rating[j] > rating[i]:
                    if j < i:
                        larger[i][0] += 1
                    else:
                        larger[i][1] += 1
                elif rating[j] < rating[i]:
                    if j < i:
                        smaller[i][0] += 1
                    else:
                        smaller[i][1] += 1

        res = 0


        for i in range(R):
            res += smaller[i][0] * larger[i][1] + larger[i][0] * smaller[i][1]

        return res