posted on 2019-10-30 17:34:52
(mathcal{XuanFly's}) 模拟赛总结
(color{navy}{written}) (color{navy}{with}) $LaTeX $ (&) $ mathcal{Markdown}$
(mathcal{NOIP2014})
(mathcal{D1T1}) 生活大爆炸版石头剪刀布
- 一看就知道是个模拟题,直接按照题意模拟,而且数据范围不大,模拟可行,(color{green}{A})了
(mathcal{D1T2}) 联合权值
- 当时还没有背过图上的算法,就向先暴力,至少拿 (30) 分再说
- 使用 (DFS) 遍历,每遍历到一个点,来两个 (mathcal{for}) 循环遍历该点连接的点,时间复杂度大概 (mathcal{O(n^3)})。但是因为没有考虑到各种各样的情况,最后 (color{red}{0}) 了……
(mathcal{D1T3}) 飞扬的小鸟
- (DFS) 骗分
- 大概是枚举点击的次数,不行就回溯,这样写是期望50分的,
但是被自己手写的样例TLE了,最后(color{orange}{35}) 分
(mathcal{D2T1}) 无线网络发射器选址
- 这道题以前当做例题讲来着,这道题有四种解法,我凭借记忆应该是选了最快的一种
- 遍历每一个公共场所,处理以这个场所为中心,d为半径的坐标
- 然后又打了个暴力程序(
结果暴力打错了),两个程序互相查错23333 - (color{green}{mathcal{A}}) 了
(mathcal{D2T2}) 寻找道路
- 正解不会,目标暴力 (60) 分
- 先 (DFS) 遍历整个图,把所有不是终点的没有出边的路径去掉
- 再 (BFS) 只要能找到终点,就是最短的
- (largemathcal{But}) (DFS)
是有极限的不应该把路径全删了,应该只删一条边,其他的还可能会用到(读错题) - (color{orange}{30})
(mathcal{D2T3}) 解方程
- 正解不会
- 暴力打了二次方以下的,(color{red}{20})
(mathcal{NOIP2018})
(mathcal{D1T1}) 铺设道路
- 去年真的被虐出阴影了,做题只记得是一个贪心但不知道怎么贪
- 尝试了:从大到小,从小到大,发现不可行 (mathfrak{cannot}) (mathfrak{achieve}) (mathfrak{it}) ,最后选择了较为合理的方法
- 从左往右遍历,如果当前的比两边小,就不加,否则加上与两边差较小的,其实比较接近正确思路了,但还是 (color{red}{20})
- 正确思路:遍历到一个点,如果比左边相邻的大,就加上差值
(mathcal{D1T2}) 货币系统
- 爆 (color{red}{0}) 了
- 不会打,想搜索来着,不知道怎么搜
- 看过题解的人都说
自己智障,竟然可以是个完全背包 - 不过看起来和线性筛素数好像,若 (mathcal{a}) 可以被表示,则 (mathcal{a+b_i (iin Z)}) 也可以被表示
(mathcal{D1T3}) 赛道修建
- 看了看子任务,觉得可以做 (mathit{m = 1}) 的情况
- 即找一条单源最长路
- (mathcal{Dijkstra})
(mathcal{D2T1}) 旅行
- 前 (15) 个点是树,可以一做
- 每次到一个新的城市,用 **优先队列 ** 存点,优先遍历字典序小的城市 (color{yellow}{60})
(mathcal{D2T2}) 填数游戏
- 不会,也没有搜索的思路
- 观察子任务,发现可以输入样例骗分 (color{red}{15})
(mathcal{D2T3}) 保卫王国
- 不会,没思路,没想法 (color{red}{0})
(mathcal{NOIP2017})
(mathcal{D1T1}) 小凯的疑惑
-
观察程序文件发现是 (largemathfrak{math}) ,明显这是个数学问题
-
通过打表,观察规律,尝试各种排列组合,发现其符合这样一个式子
[a + c = b imes (a - 1) ]即
[c = a imes b - a - b ] -
直接输出即可 (color{green}{mathfrak{A}}) 了
(mathcal{D1T2}) 时间复杂度
- 很不错的一道模拟题
- 按行读入
- 用栈判断 (mathbb{F}) 和 (mathbb{E}) 是否匹配
- 用极大数代替 (mathcal{n}) 通过相减判断复杂度
(mathcal{D1T3}) 逛公园
- 目标是前两个 (mathit{K = 0}) 的点,但是不知道为什么对了最后一个点2333
(mathcal{D2T1}) 奶酪
- 数据比较小,可以通过搜索剪枝实现
- 若搜到尽头没处搜了,就删掉这个空洞即可((mathit{vis[i] = -1}))