Problem 2666 --Recursion / Divide and Conquer - The Number of Inversions

2666: Recursion / Divide and Conquer - The Number of Inversions

"
Time Limit $1$ 秒/Second(s) Memory Limit $512$ 兆字节/Megabyte(s)
提交总数 $302$ 正确数量 $249$
裁判形式 标准裁判/Standard Judge 我的状态 尚未尝试
难度 分类标签 STL 排序

The Number of Inversions

For a given sequence A={a0,a1,...an−1}, the number of pairs (i,j)where ai>aj and i<j,is called the number of inversions.The number of inversions is equals to the number of swaps of Bubble Sort defined in the following program:

     bubbleSort(A)

       cnt = 0 // the number of inversions 

     for i = 0 to A.length-1 

        for j = A.length-1 downto i+1 

           if A[j] < A[j-1] 

              swap(A[j], A[j-1]) 

               cnt++

       return cnt 

For the given sequence A, print the number of inversions of A. Note that you should not use the above program, which brings Time Limit Exceeded.

In the first line, an integer n, the number of elements in A, is given. In the second line, the elements ai (i=0,1,..n−1) are given separated by space characters.
Print the number of inversions in a line.
5
3 5 2 1 4
6

1≤n≤200,000

0≤ai≤10^9

ai are all different

推荐代码 查看2666 所有题解 上传题解视频得图灵币

本题记录 用 户(点击查看用户) 运行号(点击购买题解) 时 间
算法最快[$2 $ms] wwjjccc 968164 2023-06-03 10:55:59
内存最少[$1120 $KB] 厕所的猪 949594 2023-03-26 22:45:28
第一AC 刘成健 333472 2018-11-29 12:56:38
第一挑战 刘成健 333472 2018-11-29 12:56:38

赛题来源/所属竞赛 会津大学《挑战数据结构与算法》 挑战数据结构与算法

竞赛编号 竞赛名称 竞赛时间 访问比赛
1799 2023-2024-2学期<计算机专业竞赛实训> 第3周练习:递归分治、高级排序和贪心算法【22计算机】 2024-03-11 00:00:00 请登录
1739 2022-2023-2学期<计算机专业竞赛实训> 第5周练习:递归分治、高级排序和贪心算法【21计算机12345】 2023-03-20 00:00:00 请登录