- 博客(12)
- 收藏
- 关注
原创 【SJTUOJ笔记】P1125 Typist (NOI2001 聪明的打字员)
https://acm.sjtu.edu.cn/OnlineJudge/problem/1125 注:本文中,用←→↑↓分别表示光标左移、光标右移、加、减,swap0和swap5分别表示与第一位交换、与最后一位交换。 一开始我联想到另一道有些相似的题目https://acm.sjtu.edu.cn/OnlineJudge/problem/1071,以为是动态规划。但思考之后发现那道题的动态规划...
2018-04-07 13:53:53
348
原创 【SJTUOJ笔记】P1122 二哥开房间
https://acm.sjtu.edu.cn/OnlineJudge/problem/1122 Hint已经告诉我们,这是一道线段树题。其实,此题确实展示了线段树的基本功能之一:维护01序列中区间最大连续0的长度。 最普通的线段树结点中有l,r两个成员,表示该结点对应区间[l,r][l,r][l,r]。添加不同的成员可以维护不同的属性。在本题中,我们要维护01序列中最大连续0的长度,那么需要...
2018-04-01 17:10:33
536
原创 【SJTUOJ笔记】P1118 Travel
https://acm.sjtu.edu.cn/OnlineJudge/problem/1118 由于题目含有大量的合并和查询操作,很容易想到用并查集来做。关键在于,如何在合并集合的同时维护题目要求的信息。 并查集的特点是,任何操作都可以变化为对集合根的操作。但反过来,却无法把根的状态改变直接反映到下面的每个集合元素中。在本题中,具体体现就是一堆旅行团会被根带着一起旅行,但无法在近似O(1)O...
2018-03-29 16:06:59
240
原创 【SJTUOJ笔记】P1092 小F的地板
https://acm.sjtu.edu.cn/OnlineJudge/problem/1092 我们先来看一看这个问题的简化版本:只用1×21×21\times2和2×12×12\times1两种方块覆盖m×nm×nm\times n的平面。 首先,状态压缩是毋庸置疑的。若某个方块被覆盖则为1,没有被覆盖则为0。这样,每一行的状态可以用一个二进制数来表示,且其转化为十进制的大小不超过29=5...
2018-02-23 17:11:58
261
原创 【SJTUOJ笔记】P1085 绿色通道
https://acm.sjtu.edu.cn/OnlineJudge/problem/1085 读题读到一半以为是背包,读完之后发现果然没有这么简单…… 第一思路肯定是要dp,但由于有个t≤109t≤109t\le 10^9在这里放着,一切时间或空间复杂度O(nt)O(nt)O(nt)的类背包写法都是行不通的。再思考一番,发现check某个长度是否合理的时间复杂度是O(n2)O(n2)O(n...
2018-02-18 11:35:13
382
原创 【SJTUOJ笔记】P1080 小F的公寓(NOIP2007 树网的核)
https://acm.sjtu.edu.cn/OnlineJudge/problem/1080 这道题对树网的核的数据范围做了改动,增加了n=500000n=500000n=500000的数据,因此必须采用时间复杂度O(n)O(n)O(n)级别的算法。 OJ上给了大段的提示,这里先原文搬过来: 本题是NOIP题目,由于数据范围很小,O(N3)、O(N2)、O(N×S)等复杂度的算法都...
2018-02-15 14:07:55
339
原创 【SJTUOJ笔记】P1074 LSZ的雪地脚印
https://acm.sjtu.edu.cn/OnlineJudge/problem/1074 雪地只有脚印和空白两种状态,可以分别用1和0代表。而查询某一块区域是否可行,就是查询这块区域内所有点的和是否为0,自然用二维前缀和比较合适。 设某一块矩形左上角的坐标为(i,j)(i,j)(i,j),短边长为kkk,对i,j,ki,j,ki,j,k进行枚举,即可得到暴力做法,时间复杂度...
2018-02-14 12:07:40
730
原创 【SJTUOJ笔记】P1072 小X的生物实验
https://acm.sjtu.edu.cn/OnlineJudge/problem/1072 看完题目,第一感觉是:这不裸LCS吗,前面那些条件有什么用?再看数据范围,发现如果还用一般LCS的O(n2)O(n2)O(n^2)做法,肯定会超时。那么必须用到所给的条件:每个序列中,1..N1..N1..N之间的每个数恰好出现5次。 回想一般LCS的转移方程。用f[i, ...
2018-02-14 11:29:51
342
原创 【SJTUOJ笔记】P1055 二哥切巧克力
https://acm.sjtu.edu.cn/OnlineJudge/problem/1055 先明确一下重心的公式。在这道题中,从(x,y)(x,y)(x,y)到(p,q)(p,q)(p,q)的一块长方形巧克力的重心(xG,yG)(xG,yG)(x_G, y_G)位于 xG=∑pi=x(i∑qj=yρ(i,j))∑pi=x∑qj=yρ(i,j), yG=∑qj=y...
2018-02-13 17:18:00
394
原创 【SJTUOJ笔记】P1056 二哥吃糖
https://acm.sjtu.edu.cn/OnlineJudge/problem/1056 先看C操作。注意所有操作的参数都是糖果编号,但由于合并操作会将糖果打乱,所以我们需要设法快速找到特定编号的糖果在哪个盒子里。再加上C操作本身的合并,应该用并查集来实现这个功能。 再看Q操作。Q操作询问糖果数量第p多的盒子中有多少糖果,并且指明了1<=p<=10,相对于N是一个很...
2018-02-08 11:11:17
882
原创 【SJTUOJ笔记】P1012 增长率问题
本题来源于SJTUOJ P1012 Description 有一个数列,它是由自然数组成的,并且严格单调上升。最小的数不小于S,最大的不超过T。现在知道这个数列有一个性质:后一个数相对于前一个数的增长率总是百分比下的整数(如5相对于4的增长率是25%,25为整数;而9对7就不行了)。现在问:这个数列最长可以有多长?满足最长要求的数列有多少个? Input Format...
2017-10-07 23:17:54
502
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人