MOCK #1算法竞赛指南· 模拟赛
Contest · 铜牌难度/ A → F · 3h
🏆 模拟赛 #1 · MOCK CONTEST

模拟赛 #1

仿照 ICPC / 区域赛的难度梯度和题型分布的一套综合模拟——6 题、3 小时,难度递增,前面签到、后面压轴,检验搜索 / DP / 图论 / 基础算法的融会贯通。

每题附有「考点提示」(折叠收起,真实比赛没有),建议先盖住提示自己判断该用什么算法。做完把代码发回去对拍评测。

MOCK #1 · 铜牌难度

规则说明

好主意!你已经走完了铜牌最核心的三大块(搜索、DP、图论)+ 基础算法 + 实战技巧,是时候来一场综合模拟赛检验融会贯通了。

我给你设计一套模拟赛完全仿照 ICPC/区域赛的难度梯度和题型分布,让你体验真实比赛节奏。

规则说明(仿 ICPC,接 0.9):

  • 6 题,建议时长 3 小时
  • 难度递增,前面是签到题,后面需要思考
  • 建议做题顺序:先扫一遍所有题,从最有把握的开始(接 0.9 的开局策略)
  • 每题我标注了考点提示(实际比赛没有,这里为了帮你定位知识点),但建议先盖住提示自己判断该用什么算法
MOCK #1 · A → F

赛题(6 题 / 3 小时)

A数组去重求和⭐(签到)

n 个整数,求所有不同的数之和。

sample.txt
输入
第一行 n
第二行 n 个整数

样例输入
5
3 1 3 2 1

样例输出
6

(不同的数是 1、2、3,和为6)

提示考点提示(先别看)

set 去重 或 排序去重(接 1.1)

B最近的较大值⭐⭐

n 个数,对每个数,求它右边第一个比它大的数的,不存在输出 -1。

sample.txt
输入
第一行 n
第二行 n 个整数

样例输入
5
2 5 3 6 1

样例输出
5 6 6 -1 -1
提示考点提示

单调栈(接 1.7)

C货物配送⭐⭐

n 个城市 m带权无向道路。求从城市 1 到城市 n 的最短距离,不可达输出 -1。

sample.txt
输入
第一行 n m
接下来 m 行:u v w(u到v有权值w的边)

样例输入
4 4
1 2 1
2 3 2
1 3 5
3 4 1

样例输出
4

(1→2→3→4 = 1+2+1 = 4)

提示考点提示

Dijkstra 最短路(接 4.3)

D选课方案⭐⭐⭐

n 个物品,每个有重量 w[i]价值 v[i],背包容量 W,每个物品只能选一次。求能装的最大价值。

sample.txt
输入
第一行 n W
接下来 n 行:w[i] v[i]

样例输入
4 8
2 3
3 4
4 5
5 6

样例输出
10
提示考点提示

01 背包(接 3.3)

E朋友圈最大规模⭐⭐⭐

n 个人,m 对朋友关系(朋友的朋友也是朋友,构成一个圈子)。求最大的朋友圈有多少人。

sample.txt
输入
第一行 n m
接下来 m 行:a b(a和b是朋友)

样例输入
6 4
1 2
2 3
4 5
5 6

样例输出
3

({1,2,3} 是最大的圈,3人)

提示考点提示

并查集 + 维护集合大小(接 4.2)

F网格最大宝藏路径⭐⭐⭐⭐(压轴)

n×m 网格,每个格子有一个值(可能为负)。从左上角 (0,0) 出发,只能向右或向下走,到达右下角 (n-1,m-1)。求路径上数字之和的最大值

sample.txt
输入
第一行 n m
接下来 n 行,每行 m 个整数

样例输入
3 3
1 3 1
1 5 1
4 2 1

样例输出
12

(路径 1→3→5→2→1 = 12)

提示考点提示

路径 DP(接 3.1/3.2)

MOCK #1 · 说明

比赛建议 & 进行方式

📝 比赛建议

  1. 先花 5 分钟扫一遍全部 6 题,判断每题该用什么算法、难度如何(接 0.9 开局)。
  2. 从签到题(A)开始,快速拿下,建立信心。
  3. 按你的把握排序做题,别卡在一道题上(接 0.9 止损)。
  4. 每题写完先自测(造边界数据,接 0.6),有把握再"提交"(发给我)。
  5. 遇到卡壳,可以先跳过做后面的。

怎么进行

你可以:

  • 一题一题做,每写完一题把代码发给我,我当"评测机"给你判(AC / 指出 bug),并算"罚时"。
  • 或者全部做完再一起发,我统一批改。
  • 卡住了可以问我提示(但真实比赛没有提示,所以尽量自己想)。

我会像真实评测一样

  • 代码对 → "AC!" + 简短点评
  • 有 bug → 指出错在哪(WA/TLE/RE 类型 + 大致方向,像真实评测给你线索,让你自己改,接 0.4)
  • 给你实时排名感:做出几题、用时多少

现在开始计时! ⏱️

先告诉我你扫完题后的判断(每题打算用什么算法、准备先做哪几题),或者直接开始做第一题。我在这儿当你的评测机 + 教练。

加油,这是检验你这段时间学习成果的时候了!💪