本文首发在我的个人博客:https://jlice.top/p/7szz3/。欢迎大家前去参观,么么哒~
题解是交卷后做的,不保证AC。
题目1
题目描述
给出长虔都为n的两个整数数组a[n]和b[n],特殊运算 S = a[0]*b[0] + ... + a[n-1]*b[n-1],你可以改变a数组的顺序使得运算S得到的值最小,给出最终的最小值。 数组长度n大于50,对于每个元素X,0<=X<=100。
输入描述
输入一共三行。 第一行为n,表示两个数组的长度。 第二行包括n个数字,用空格隔开,是a数组的值。 第三行包括n个数字,用空格隔幵,是b数组的值。
输出描述
输出一行,包含一个数字,表示最小的S值。
示例1
输入
3
1 1 3
10 30 20
输出
80
题解
水题。先对数组a、b排序,一个升序遍历一个降序遍历。
代码:
n = int(input())
a = sorted(list(map(int, input().split())))
b = sorted(list(map(int, input().split())), reverse=True)
res = 0
for i in range(n):
res += a[i] * b[i]
print(res)
题目2
题目描述
小明给儿子小小明买了一套英文字母卡片(总共包合52张,区分大小写),小小明把卡片丢在