3131: 循环逆序对

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:0 解决:0

题目描述

给定一个长度为 n 的数列 �1,�2,⋯,��a1,a2,,an 和一个整数 k。将数列 a 重复 k 次,得到长度为 �×�n×k 的循环数列 AA 的正式定义如下:

  • A 的前 n 项等于 a 的前 n 项——对于 1≤�≤�1in,有 ��=��Ai=ai
  • 之后每个 A 的元素 ��Ai,都有 ��=��−�Ai=Ain

如果能够找到一对整数 (�,�)(i,j),满足 �<�i<j 且 ��>��Ai>Aj,则 (�,�)(i,j) 就是一对逆序对。请求出 A 中的逆序对数量。

输入

  • 第一行:两个整数 n 与 k
  • 第二行:n 个整数 �1,�2,⋯,��a1,a2,,an
  • 对于 20%20% 的数据,保证 1≤�≤101k10
  • 对于 40%40% 的数据,保证 1≤�≤50001k5000
  • 对于 60%60% 的数据,保证 1≤�≤1000001k100000
  • 对于 100%100% 的数据,保证 1≤�≤10000001k1000000
  • 1≤�≤50001n50001≤��≤50001ai5000



输出

  • 单个整数:表示 A 中逆序对数量。

样例输入 复制

3 2
3 1 4

样例输出 复制

5

来源/分类