• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
dwtfukgv
博客园    首页    新随笔    联系   管理    订阅  订阅
上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 58 下一页
2017年4月28日
HDU 1890 Robotic Sort (Splay)
摘要: 题意:将一列数字排序 排序规则是 每次找到最小值的位置loc 将1~loc所有数字颠倒 然后删掉第一位 直到排好序 排序要求是稳定的。 析:直接用splay来维护最小值,然后插入删除即可。 代码如下: 阅读全文
posted @ 2017-04-28 21:47 dwtfukgv 阅读(163) 评论(0) 推荐(0)
BZOJ 1500 [NOI2005]维修数列 (splay)
摘要: 1500: [NOI2005]维修数列 Description Input 输入的第1 行包含两个数N 和M(M ≤20 000),N 表示初始时数列中数的个数,M表示要进行的操作数目。第2行包含N个数字,描述初始时的数列。以下M行,每行一条命令,格式参见问题描述中的表格。任何时刻数列中最多含有50 阅读全文
posted @ 2017-04-28 16:57 dwtfukgv 阅读(177) 评论(0) 推荐(0)
2017年4月27日
POJ 3690 Constellations (哈希)
摘要: 题意:给定上一n*m的矩阵,然后的t个p*q的小矩阵,问你匹配不上的有多少个。 析:可以直接用哈希,也可以用AC自动机解决。 代码如下: 阅读全文
posted @ 2017-04-27 20:10 dwtfukgv 阅读(236) 评论(0) 推荐(0)
2017年4月26日
POJ 3691 DNA repair (DP+字符串)
摘要: 题意:给出nn(1≤n≤50,1≤n≤50) 个病毒DNA序列,长度均不超过20。现在给出一个长度不超过1000的字符串,求至少要更换多少个字符, 才能使这个字符串不包含这些DNA序列。 析:利用前缀来做好状态转移。 代码如下: 阅读全文
posted @ 2017-04-26 17:22 dwtfukgv 阅读(202) 评论(0) 推荐(0)
2017年4月23日
SPOJ QTREE Query on a tree (树链剖分+线段树)
摘要: 题意:给定一棵树,然后有一些操作,有两种,一种是改变某条边的权值,第二种是询问从u->v的路径中,边权最大的是多少。 析:就一个树链剖分,然后用线段树维护即可。 代码如下: 阅读全文
posted @ 2017-04-23 10:48 dwtfukgv 阅读(158) 评论(0) 推荐(0)
2017年4月22日
HDU 3966 Aragorn's Story (简单树链剖分)
摘要: 题意:给一棵树,并给定各个点权的值,然后有3种操作: I C1 C2 K: 把C1与C2的路径上的所有点权值加上K D C1 C2 K:把C1与C2的路径上的所有点权值减去K Q C:查询节点编号为C的权值 析:就是简单的树链剖分,可以用树状数组来维护,然后就OK了。 代码如下: 阅读全文
posted @ 2017-04-22 21:59 dwtfukgv 阅读(172) 评论(0) 推荐(0)
2017年4月21日
UVaLive 11525 Permutation (线段树)
摘要: 题意:有一个由1到k组成的序列,最小是1 2 … k,最大是 k k-1 … 1,给出n的计算方式,n = s0 * (k - 1)! + s1 * (k - 2)! +… + sk-1 * 0!, 给出s1…sk,输出序列里第n大的序列。 析:我们先看第一数,如果第一个数是2,那么它前面至少有(k 阅读全文
posted @ 2017-04-21 20:18 dwtfukgv 阅读(125) 评论(0) 推荐(0)
UVaLive 5031 Graph and Queries (Treap)
摘要: 题意:初始时给出一个图,每个点有一个权值,三种操作:(1)删除某个边;(2)修改每个点的权值;(3)询问与节点x在一个连通分量中所有点的第K大的权值。 析:首先是要先离线,然后再倒着做,第一个操作就成了加边操作,很容易实现,第二操作,就是分成两个操作,先把x结点删掉,然后再插入一个新结点, 最后一个 阅读全文
posted @ 2017-04-21 19:54 dwtfukgv 阅读(129) 评论(0) 推荐(0)
2017年4月20日
UVa 11468 Substring (AC自动机+概率DP)
摘要: 题意:给出一个字母表以及每个字母出现的概率。再给出一些模板串S。从字母表中每次随机拿出一个字母,一共拿L次组成一个产度为L的串, 问这个串不包含S中任何一个串的概率为多少? 析:先构造一个AC自动机,然后随机生成L个字母,就是在AC自动机的某个结点走多少步,dp[i][j] 表示在 i 结点,并且剩 阅读全文
posted @ 2017-04-20 20:11 dwtfukgv 阅读(204) 评论(0) 推荐(0)
ZOJ 3939 The Lucky Week (暴力找规律)
摘要: 题意:给定一个幸运日,求第 k 个幸运日是多少。 析:由于闰年,每400肯定会循环一次,所以我们就可以先找出每400年会有多少幸运日,是2058个,然后再暴力。 代码如下: 阅读全文
posted @ 2017-04-20 12:32 dwtfukgv 阅读(333) 评论(0) 推荐(0)
UVa 11020 Efficient Solutions (BST)
摘要: 题意:给按顺序给定 n 个人群,用x和y来描述,如果有没有任何一个x' < x y' <= y 或 x '<= x y' <= y,那么这个群体就是优势群体, 让你求出每放入一个人群,已经知道的群体有几个优势群体。 析:首先我们知道的是,如果某个群体失去了优势,那么该群体就不可能再获得优势,然后我们 阅读全文
posted @ 2017-04-20 11:20 dwtfukgv 阅读(227) 评论(0) 推荐(0)
2017年4月19日
POJ 3693 Maximum repetition substring (后缀数组+RMQ)
摘要: 题意:给定一个字符串,求其中一个由循环子串构成且循环次数最多的一个子串,有多个就输出最小字典序的。 析:枚举循环串的长度ll,然后如果它出现了两次,那么它一定会覆盖s[0],s[ll],s[ll*2].....这些点中相邻的两个,然后向前和向后匹配, 看看最大的匹配多大,然后把所有的答案记录下来,最 阅读全文
posted @ 2017-04-19 23:35 dwtfukgv 阅读(151) 评论(0) 推荐(0)
SPOJ - REPEATS Repeats (后缀数组+RMQ)
摘要: 题意:求一个串中出现重复子串次数最多的数目。 析:枚举每个长度的子串,至少要重复两次,必然会经过s[l*i]中相邻的两个,然后再分别向前和向后匹配即可。 代码如下: 阅读全文
posted @ 2017-04-19 23:04 dwtfukgv 阅读(277) 评论(0) 推荐(0)
ZOJ 3946 Highway Project (最短路)
摘要: 题意:单源最短路,给你一些路,给你这些路的长度,给你修这些路的话费,求最短路和最小花费。 析:本质就是一个最短路,不过要维护两个值罢了,在维护花费时要维护的是该路要花多少,而不是总的路线花费。 代码如下: 阅读全文
posted @ 2017-04-19 21:48 dwtfukgv 阅读(159) 评论(0) 推荐(0)
2017年4月17日
HDU 5860 Death Sequence (递推)
摘要: 题意:n个人排成一行,从第一个人开始,每个k个人报数,报到数的人被杀死,剩下的人重新排成一行再报数。一共q个询问,每次询问第qi个死的人是谁。 析:是一个约瑟夫的变形,我们要考虑子问题的问题同样编号是0-n-1,如果在某一轮,第 i 个人如果能取模 k 为0,那么这一轮他就会被干掉,如果不是 那么下 阅读全文
posted @ 2017-04-17 23:18 dwtfukgv 阅读(132) 评论(0) 推荐(0)
HDU 5862 Counting Intersections (离散化+扫描线+树状数组)
摘要: 题意:给你若干个平行于坐标轴的,长度大于0的线段,且任意两个线段没有公共点,不会重合覆盖。问有多少个交点。 析:题意很明确,可是并不好做,可以先把平行与x轴和y轴的分开,然后把平行y轴的按y坐标从小到大进行排序,然后我们可以枚举每一个平行x轴的线段, 我们可以把平行于x轴的线段当做扫描线,只不过有了 阅读全文
posted @ 2017-04-17 18:17 dwtfukgv 阅读(148) 评论(0) 推荐(0)
2017年4月13日
POJ 3616 Milking Time (DP)
摘要: 题意:奶牛Bessie在0~N时间段产奶。农夫约翰有M个时间段可以挤奶,时间段f,t内Bessie能挤到的牛奶量e。奶牛产奶后需要休息R小时才能继续下一次产奶, 求Bessie最大的挤奶量。 析:一个很水的DP,就是不能再表示时刻了,而是区间,dp[i] 第 i 个区间 最大是多少。 代码如下: 阅读全文
posted @ 2017-04-13 20:12 dwtfukgv 阅读(158) 评论(0) 推荐(0)
URAL 1297 Palindrome (后缀数组+RMQ)
摘要: 题意:给定一个字符串,求一个最长的回回文子串,多解输出第一个。 析:把字符串翻转然后放到后面去,中间用另一个字符隔开,然后枚举每一个回文串的的位置,对第 i 个位置,那么对应着第二个串的最长公共前缀, 求最长公共子串,可以用RMQ解决。 代码如下: 阅读全文
posted @ 2017-04-13 19:37 dwtfukgv 阅读(137) 评论(0) 推荐(0)
2017年4月12日
HDU 1078 FatMouse and Cheese (记忆化搜索)
摘要: 题意:给定一个n*n的矩阵,问从(0,0)开始走,每次最多水平或者垂直走k个格子,且要保证每次到达的格子要大于前一个,问最大和是多少。 析:一个很简单的记忆搜索,dp[i][j],表示到达(i,j)的最大和是多少,我们可以反着推出答案。 代码如下: 阅读全文
posted @ 2017-04-12 22:18 dwtfukgv 阅读(171) 评论(0) 推荐(0)
2017年4月9日
HDU 3915 Game (高斯消元)
摘要: 题意:有n堆石子,每个人只能从某一堆至少拿走一个,不能拿者败。问事先拿走某些堆的石子,使得先手必败。 析:将石子拆成二进制,未知数为1表示保留该堆石子,为0表示事先拿走该堆石子。最后求自由变元的数目,就是2的幂。 代码如下: 阅读全文
posted @ 2017-04-09 11:08 dwtfukgv 阅读(168) 评论(0) 推荐(0)
上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 58 下一页
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3