1 2 3 4 5 ··· 15 下一页
摘要: JAVA 程序语言设计(基础篇) 笔记摘录 ================ + 为避免输入错误, 不要在 、`nextShort() nextInt() nextLine()` 都称为 ,它们会读取用分隔符隔开的令牌。 读取一个由分隔符分隔的字符串,而 读取一个以行分隔符结束的行。 令牌读取方法不 阅读全文
posted @ 2019-09-22 23:02 CzYoL 阅读(273) 评论(0) 推荐(0) 编辑
摘要: "传送门" 分析: 记录最短值和次短值,每次dijkstra更新。 注意: 如果用从que中取出的值更新了最短值,那么就将最短值放入que中。 如果用从que中取出的值更新了次短值,那么就将次短值放入que中。 从que中取出值后,设取出的最短/次短值为dist,那么在后续更新中写成$dis[v] 阅读全文
posted @ 2017-11-10 14:39 CzYoL 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 各一个奇环内向森林,求每两个点对间的距离之和。无法到达则距离为 1. 分析: 首先Tarjan找出size大于1的连通分量(环),环中的边的贡献可以单独计算。 然后从入度为0的点向内dfs,直到遇见size大于1的环。记录每个点的to_size(朝向环方向有多少个节点),from_siz 阅读全文
posted @ 2017-11-09 08:04 CzYoL 阅读(227) 评论(0) 推荐(0) 编辑
摘要: "传送门" 题意: Seter建造了一个很大的星球,他准备建造N个国家和无数双向道路。N个国家很快建造好了,用1..N编号,但是他发现道路实在太多了,他要一条条建简直是不可能的!于是他以如下方式建造道路:(a,b),(c,d)表示,对于任意两个国家x,y,如果a [4, 5](此处就只连单向边示意) 阅读全文
posted @ 2017-11-08 21:54 CzYoL 阅读(1082) 评论(0) 推荐(0) 编辑
摘要: 题意: 一开始有n个非负整数h[i],接下来会进行m次操作,第i次会给出一个数c[i],要求选出c[i]个大于0的数并将它们 1,问最多可以进行多少次? 分析: 首先一个显然的贪心就是每次都将最大的c[i]个数 1,于是就可以用无旋式treap来维护,基本操作中split_k和split_v都使用普 阅读全文
posted @ 2017-11-06 17:57 CzYoL 阅读(247) 评论(0) 推荐(0) 编辑
摘要: "传送门" 分析: 并查集: 第一步先将所有矛盾从大至小排序,显然先将矛盾值大的分成两部分会更优。 普通的并查集都只能快速合并两个元素至同一集合,却不能将两个元素分至不同集合。 对于将很多数分成两个集合,并给出两数存在的矛盾关系(A和B不能在一集合),普通并查集无法解决。 考虑见每个元素拆成两个点, 阅读全文
posted @ 2017-11-05 20:32 CzYoL 阅读(359) 评论(0) 推荐(0) 编辑
摘要: "传送门" 题意: 每次合并两份邮件,或者将某一份邮件独立出来,问最后有多少个邮件集合。 分析: 考虑初始化每个节点的祖先为一个虚父节点(i + n),虚父节点指向它自己。这样可以进行正常的合并操作。 而在删除时,将该节点的祖先置为一个更大的数(++anc_cnt),并让该anc_cnt指向它自己, 阅读全文
posted @ 2017-11-04 22:12 CzYoL 阅读(260) 评论(0) 推荐(0) 编辑
摘要: "传送门" 分析: 单调队列:维护两个递增、递减的队列,每次都加入新元素并更新,如果最大值(递减队首) 最小值(递增队首) k,那么将最左段更新为前面两者中较前的那一个,并弹掉。用deque可以很方便的实现双向的队列。 code 阅读全文
posted @ 2017-11-02 21:19 CzYoL 阅读(390) 评论(0) 推荐(0) 编辑
摘要: "传送门" 分析: 虽然颜色种类很多,但是所有颜色个数之和n是一定的,这时候就可以使用vector对每个颜色维护一个坐标集合,空间只占n个。 对于查询L,R:直接一行: 对于修改: 1. 两种颜色相同,不管。 2. 两种颜色不同:由于刚开始向每种颜色集合中加入坐标时,坐标是升序加入的,假设交换的是X 阅读全文
posted @ 2017-11-02 19:07 CzYoL 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 题意: 最近西雅图的高中校园里流行这样一个游戏。 我们有一个骰子,这个骰子有M个面,分别写着1..M,并且是个公平的骰子,换句话说,一次投掷时每个面朝上的概率是相同的。 游戏的组织者使用这个骰子进行N次投掷,并且告诉玩家点数v出现了至少一次。那么玩家需要猜测N次投掷的点数之和。如果猜对了,就赢得了这 阅读全文
posted @ 2017-11-02 19:00 CzYoL 阅读(276) 评论(0) 推荐(0) 编辑
1 2 3 4 5 ··· 15 下一页