第42303题 判断题
在一个数组中,如果两个元素 a[i] 和 a[j]满足i < j且 a[i] > a[j],则a[i] 和 a[j]是一个逆序对。 下面代码可以正确统计数组a区间 [l,r] 内的逆序对总数。
cnt = 0

def merge_count(a, l, m, r):

    global cnt
    i = l
    j = m + 1

    while i <= m and j <= r:
        if a[i] <= a[j]:
            i += 1
        else:
            cnt += (m - i + 1)
            j += 1

if __name__ == "__main__":
    a = [2, 4, 1, 3]
    merge_count(a, 0, 1, 3)
    print(f"跨区间逆序对数量:{cnt}")
{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
程序运行统计
暂无判题统计
知识点:
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析