本文仅作学习之用,题目的测试用例下载及答案的上传请到上面的英文地址,有不专业或者错误还请指正。
最小标量积
问题
给定两个向量:v1=(x1,x2,...,xn) 和v2=(y1,y2,...,yn).这两个向量的标量积是一个实数,计算方式为:x1y1+x2y2+...+xnyn.
假设允许你对每一个向量重新排列。选择两个序列使得两个新向量的标量积最小,并且输出那个值。
输入
输入文件的第一行包含一个整数T:测试用例的数目。对于每一个测试用例,第一行包含整数n,接下来的两行每行包含n个整数,分别是向量v1和v2的序列。
输出
每一个测试用例占一行:
Case #X: Y
X表示第几个测试用例,从1开始,Y表示两个给定向量的任意序列的最小标量积。
限制
小测试数据
T = 1000
1 <= n <= 8
-1000 <= xi, yi <= 1000
大测试数据
T = 10
100 <= n <= 800
-100000 <= xi, yi <= 100000
例子
输入
2
3
1 3 -5
-2 4 1
5
1 2 3 4 5
1 0 1 0 1
输出
Case #1: -25
Case #2: 6