/ Vijos / 题库 /

机器人队列

机器人队列

时间限制:1秒  内存限制:256M


【题目描述】

  H老师有两个机器人队列,每个队列都有 n 个机器人,每个机器人都有一个高度,且同一队列的机器人高度互不相同。两列机器人之间“不协调度”定义为 \(\sum_{i=1}^n{(a_i-b_i)^2}\),其中 \(a_i\) 表示第一列机器人中第 \(i\) 个机器人的高度,\(b_i\) 表示第二列机器人中第 \(i\) 个机器人的高度。
  每列机器人中相邻两个机器人的位置都可以交换,请你通过交换使得两列机器人之间的不协调度最小。请问得到这个最小的不协调度,最少需要交换多少次?如果这个数字太大,请输出这个最小交换次数对 \(10^9+7\) 取模的结果。

【输入格式】

  第一行包含一个整数 \(n\),表示每个队列中机器人的数目。
  第二行有 \(n\) 个整数,每两个整数之间用一个空格隔开,表示第一列机器人的高度。
  第三行有 \(n\) 个整数,每两个整数之间用一个空格隔开,表示第二列机器人的高度。

【输出格式】

  输出一个整数,表示最少交换次数对 \(10^9+7\) 取模的结果。

【输入输出样例1】

 Input

4
4 5 2 8
5 4 2 8

 Output

1

【样例1解释】

  两列机器人的最小不协调度是 0,最少需要交换 1 次,比如:交换第 1 列的前 2 个机器人或者交换第 2 列的前 2 根机器人。

【输入输出样例2】

 Input

4
3 5 6 4
3 9 4 6

 Output

2

【样例2解释】

  最小不协调度是 10,最少需要交换 2 次,比如:交换第 1 列的中间 2 根机器人的位置,再交换第 2 列中后 2 根机器人的位置。

【数据限制】

  对于 10% 的数据,\(1≤n≤10\);
  对于 30% 的数据,\(1≤n≤100\);
  对于 60% 的数据,\(1≤n≤1000\);
  对于 100% 的数据,\(1≤n≤100000,0≤机器人高度 ≤ maxlongint\)。

【来源】

  Mr.he

信息

ID
2544
难度
(无)
分类
贪心 | 其他 | 分治树状数组线段树 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
1
上传者