Mbpp/296

❌ 均未通过 Base: FAIL Plus: FAIL
测试评估
指标结果
Base 测试FAIL
Plus 测试FAIL
代码长度911 字符
模型生成的代码 (911 字符)
def get_Inv_Count(arr):
    """
    Count inversions in an array.
    An inversion is a pair (i, j) such that i < j and arr[i] > arr[j].
    Uses merge sort to achieve O(n log n) time complexity.
    """
    def merge_sort_and_count(a):
        if len(a) <= 1:
            return a, 0
        mid = len(a) // 2
        left, inv_left = merge_sort_and_count(a[:mid])
        right, inv_right = merge_sort_and_count(a[mid:])
        merged, inv_merge = merge_and_count(left, right)
        return merged, inv_left + inv_right + inv_merge

    def merge_and_count(left, right):
        merged = []
        i = j = 0
        count = 0
        while i < len(left) and j < len(right):
            if left[i] <= right[j]:
                merged.append(left[i])
                i += 1
            else:
                merged.append(right[j])
                j += 1
                count += len(left) - i
        merged
Base 失败测试用例
  • [[1, 20, 6, 4, 5]]
Plus 失败测试用例
  • [[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]]