2024浙江大学计算机考研上机真题
2024浙江大学计算机考研上机真题
2024浙江大学计算机考研复试上机真题
2024浙江大学计算机考研机试真题
2024浙江大学计算机考研复试机试真题
历年浙江大学计算机复试上机真题
历年浙江大学计算机复试机试真题
2024浙江大学计算机复试上机真题
2024浙江大学计算机复试机试真题
在线评测:传送门:pgcode.cn
数字收集
题目描述
小诺要收集 1 到 100000 范围内的所有整数来恢复某件物品的法力。
目前小诺已经收集到了 n 个整数,这 n 个整数可能存在重复。
输入格式
第一行输入一个正整数 n(1 ≤ n < 10^5),代表小诺已收集的整数个数。
第二行输入 n 个整数 ai(1 ≤ ai ≤ 10^5),表示小诺已收集到的 n 个整数,这些整数可能存在重复。
输出格式
输出两个整数,中间用空格分隔,分别表示在 1 到 100000 这个范围内,小诺未收集到的最小整数和最大整数。
输入样例
3
1 3 5
输出样例
2 100000
题目来源
2024
划分子集
题目描述
给定两个整数 n 和 m。
其中 n 代表一个集合 V 中元素的数量,V = {1, 2, …, n},且 1 ≤ n ≤ 10000;m 表示元素之间关系的数量,0 ≤ m ≤ 10000。
后续有 m 行输入,每行包含两个不同的整数 u 和 v(1 ≤ u ≤ n,1 ≤ v ≤ n),表示元素 u 和 v 之间存在某种关系。
并且该关系具有传递性,即若元素 a 与元素 b 存在此关系,元素 b 与元素 c 存在此关系,那么元素 a 与元素 c 也存在此关系。
目标是将集合 V 划分为若干个子集 S1, S2, …, Sk,要求对于任意一组存在上述关系的元素对 (u, v),u 和 v 不能处于同一个子集 Si(1 ≤ i ≤ k)。
输出满足上述划分条件的最小的 k 值,k 即表示最少需要将集合 V 划分成的子集数量。
输入格式
第一行:两个整数 n 和 m,以空格分隔。
接下来 m 行:每行两个整数 u 和 v,以空格分隔。
输出格式
一个整数 k,代表满足条件的最小划分数量。
输入样例
4 2
1 2
3 4
输出样例
2
题目来源
2024
考试招生
题目描述
小诺所在的灵幻学院举办成仙考试,有 n 名考生(编号 1 到 n)参加,需提交 4 门灵幻科目的成绩 s1, s2, s3, s4(0≤si≤100,i = 1,2,3,4) ,学院有 m 个灵幻系(编号 1 到 m)进行招生 。
录取规则
各灵幻系按编号从小到大依次招生,每个系计划招生 k 人(1≤k≤n)。
从尚未被录取的考生中,先按四门成绩总分∑(i = 1 到 4) si 从高到低排序录取 。
若总分相同:
当 c∈{1,2,3,4} 时,按第 c 门科目的成绩 sc 从高到低排序录取。
当 c = 0 时,不考虑单科成绩,只按总分 。
若经过上述排序后成绩仍相同,则按考生编号从小到大全部录取,此时录取人数可超过计划的 k 人。
输入格式
第一行:两个正整数 n 和 m(1≤n≤1000,1≤m≤100)。
接下来 n 行:每行 4 个整数,表示每个考生的四门科目成绩。
再接下来 m 行:每行 2 个整数 k 和 c(1≤k≤n,0≤c≤4) ,分别是每个系的计划招生人数和成绩排序规则参数。
输出格式
共 m 行,每行第一个数为该灵幻系实际录取人数 p,后面 p 个数为按录取规则被录取考生的编号。
输入样例
3 3
90 100 100 100
100 100 90 100
100 100 100 100
1 0
1 2
1 0
输出样例
1 3
2 1 2
0
题目来源
2024
数组元素大挪移
题目描述
设两个长度为 n(2 ≤ n ≤ 1000)的数组 A = [(a₁₁,a₁₂),(a₂₁,a₂₂),…,(aₙ₁,aₙ₂)] 和 B = [(b₁₁,b₁₂),(b₂₁,b₂₂),…,(bₙ₁,bₙ₂)],其中 0 ≤ aᵢⱼ ≤ 500,0 ≤ bᵢⱼ ≤ 500,i = 1,2,…,n,j = 1,2。
有三种操作:
- 从 A 中选一个元素 (aₓ₁,aₓ₂),从 B 中选一个元素 (bᵧ₁,bᵧ₂),交换二者在各自数组中的位置。
- 从 A 中选两个元素 (aₓ₁,aₓ₂)、(aₘ₁,aₘ₂),从 B 中选两个元素 (bᵧ₁,bᵧ₂)、(bₙ₁,bₙ₂),交换它们在各自数组中的位置。
- 不进行交换。
操作后,设 A 数组中第一个维度元素之和为 Sa1,第二个维度元素之和为 Sa2;B 数组中第一个维度元素之和为 Sb1,第二个维度元素之和为 Sb2。
要求先使得 |Sₐ₁ - Sb1| 最小,在满足 |Sₐ₁ - Sb1| 最小的多种操作方案中,再使得 |Sₐ₂ - Sb2| 最小。
输入格式
第一行输入一个整数 n(2<=n<=1000),表示数组 A 和 B 的长度。
接下来 n 行,每行输入两个整数(范围 0-500),依次表示数组 A 中元素的两个维度的值。
再接下来 n 行,每行输入两个整数(范围 0-500),依次表示数组 B 中元素的两个维度的值。
输出格式
输出一行,包含两个整数,分别为满足要求的操作方案下 |Sₐ₁ - Sb1| 和 |Sₐ₂ - Sb2| 的值。
输入样例
2
3 2
1 5
2 4
4 3
输出样例
0 2
题目来源
2024