该文被密码保护。 阅读全文
posted @ 2019-07-25 11:40 .Terena 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 推荐先阅读:可持久化线段树学习笔记 一、定义: 可进行修改,并支持如下两功能的数组: 1.在某个历史版本上修改某一个位置上的值 2.访问某个历史版本上的某一位置的值 二、原理: 如果你已经学会了可持久化线段树(我就当你会了,不会见题头),会发现其实可持久化数组已经*含在**树中,或者说借**树实现的 阅读全文
posted @ 2019-07-25 13:11 .Terena 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 一、定义:“可持久化”定义:可以支持回退,访问之前版本的数据结构; 主席树:可以访问未经过其他操作的版本的线段树 二、原理: 主席树与线段树的基本操作相同,唯一的难点在于如何实现可持久化。 如果想要访问每个版本的线段树,首先想到的是对线段树进行全盘复制,然后在上个版本的基础上进行本次操作以建立新版本 阅读全文
posted @ 2019-07-25 13:00 .Terena 阅读(273) 评论(1) 推荐(0) 编辑
摘要: T3 期末考试 思维题 题目读着就很摸不到头脑,不知道该用啥算法,但想想暴力反而能找到灵感。 这题暴力该怎么写?这个问题就很难想,该枚举的是什么? 再读几遍题,很容易想到的是,最小不愉快度的决定因素,是所有成绩都出来的时间。 那么如果给定一个时间值,规定所最后一门成绩在这天前出完,是否可以求出最小不 阅读全文
posted @ 2019-06-05 17:33 .Terena 阅读(240) 评论(2) 推荐(0) 编辑
摘要: 带限制的dijkstra,由题意得,每个城市的实际最早进入时间=max(最短路,所有结界点城市的最大最短路) 考虑实现,我们可以记录每个点的入度或是哪个城市保护哪个城市,在维护到某点时判断是否可以进入。若不能进入则continue,能则判断进入该城市后可以解锁哪些新的城市,再将新城市更新压入队列。不 阅读全文
posted @ 2019-06-05 17:32 .Terena 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 顺着题面来推,长度为n的数列中有m个位置不变,相当与求从n里选m个的组合数。剩余可变的位置相当于求错排。 数据范围n≤1000000,不能递推求组合数,可以直接公式计算,但同时要求逆元来支持取模运算。 因此需要递推求最大范围内的组合数和错排,两者都是线性的,所以时间复杂度都是O(1000000),每 阅读全文
posted @ 2019-06-05 17:31 .Terena 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 用时:20 min 时间复杂度:O(kn) 还算是比较简单的一道题,先看部分分,发现暴力可以拿50。暴力的做法是枚举每个合法咖啡店左右两端相同颜色的客栈。 考虑优化,由于本题中每个合法点都对答案造成影响,很容易想到维护某种前缀和。 而从输入过程中每个点的影响,无论该点是否合法,该点上的客栈都对答案做 阅读全文
posted @ 2019-05-29 22:25 .Terena 阅读(107) 评论(0) 推荐(0) 编辑
摘要: D1T1 生活大爆炸版石头剪刀布 用时:10min 复杂度:n 简单模拟,照题意打表即可 D2T1 无线网络发射器选址 用时:10min 复杂度 :n^4 简单模拟,注意维护边界,比较方便的做法是把所有的坐标加上20 阅读全文
posted @ 2019-05-20 22:36 .Terena 阅读(135) 评论(0) 推荐(0) 编辑
摘要: D1T1 Vigenère 密码(一次ac) 用时 20min 复杂度 n 一道字符串模拟,给出密钥用一套简单的密码对应表把密码还原,只需要注意字母的范围。 因为不太熟悉字符的ASCII码搞的时间有点长,ASCII码的优点是可以把字母大小关系转化成数字进行处理,而且不必考虑字母的大小写。 呆马: D 阅读全文
posted @ 2019-05-19 21:53 .Terena 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 概念 1.简单图:没有重边和自环的图 2.有向/无向/混合:不解释了 3.点的度,入度,出度(入边,出边) 4.一条只出现一次的路径叫简单路径 5.cycle(简单环,复杂环) 6.无向图中两节点可互相到达,则这两点连通 7.有向图中一点可到达另一点:可达(反着不行) 8.任意两点都可达的无向图:连 阅读全文
posted @ 2019-05-01 16:52 .Terena 阅读(198) 评论(1) 推荐(0) 编辑