• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
dwtfukgv
博客园    首页    新随笔    联系   管理    订阅  订阅
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 58 下一页
2017年8月27日
UVa 12099 The Bookcase (DP)
摘要: 题意:有 n 本书,每本书有一个高度和宽度,然后让你制作一个3层的书架,可以放下所有的书,并且要高*宽尽量小。 析:先把所有的书按高度进行排序,然后dp[i][j][k] 表示 前 i 本书,第二 层的宽度是 j,第三层的宽度是 k,第二层和第三层的高度最小,首先我们可以先最高的那本书放到第一层,那 阅读全文
posted @ 2017-08-27 10:48 dwtfukgv 阅读(368) 评论(0) 推荐(0)
2017年8月26日
UVa 1608 Non-boring sequences (分治)
摘要: 题意:给你一个长度为n序列,如果这个任意连续子序列的中都有至少出现一次的元素,那么就称这个序列是不无聊的,判断这个序列是不是无聊的。 析:首先如果整个序列中有一个只出过一次的元素,假设是第 p 个,那么我就可以看他左边和右边的序列是不是不无聊,也就是判断 1~p-1 和 p+1 ~ n,这可以用分治 阅读全文
posted @ 2017-08-26 00:03 dwtfukgv 阅读(159) 评论(0) 推荐(0)
2017年8月25日
HDU 6162 Ch’s gift (线段树+树链剖分)
摘要: 题意:给定上一棵树,每个树的结点有一个权值,有 m 个询问,每次询问 s, t , a, b,问你从 s 到 t 这条路上,权值在 a 和 b 之间的和。(闭区间)。 析:很明显的树链剖分,但是要用线段树来维护,首先先离线,然后按询问的 a 排序,每次把小于 a 的权值先更新上,然后再查询,这样就是 阅读全文
posted @ 2017-08-25 09:56 dwtfukgv 阅读(267) 评论(0) 推荐(0)
2017年8月24日
HDU 6170 Two strings (DP)
摘要: 题意:给定两个字符串,问你是不是匹配,这不是完全的正则表达式,而且题意有点模糊,'.'能匹配任意字符。'*'能匹配前面一个字符重复0-无数多次,如果是 . * 这样的是先匹配 .,再匹配*。 析:dp[i][j] 表示 第一个串匹配到 i 第二串匹配到 j,是不是能。 如果是a[i] == b[j] 阅读全文
posted @ 2017-08-24 20:15 dwtfukgv 阅读(215) 评论(0) 推荐(0)
2017年8月23日
HDU 5977 Garden of Eden (树分治+状态压缩)
摘要: 题意:给一棵节点数为n,节点种类为k的无根树,问其中有多少种不同的简单路径,可以满足路径上经过所有k种类型的点? 析:对于路径,就是两类,第一种情况,就是跨过根结点,第二种是不跨过根结点,分别讨论就好,由于结点比较大,所以采用分治来进行处理,优先选取重点作为划分的依据。 代码如下: 阅读全文
posted @ 2017-08-23 20:52 dwtfukgv 阅读(219) 评论(0) 推荐(0)
2017年8月22日
HDU 3586 Information Disturbing (树形DP+二分)
摘要: 题意:给出n个士兵,其中1号为指挥官,关系为树状结构,叶子为先锋,现在要在总花费小于等于m的情况切断所有的先锋与指挥官的联系,问最大的限制最小为多少。 析:很明显是一个树形DP,但是限制怎么求呢,就是通过二分,然后变成一个判定性问题,dp[i] 表示切断 以 i 的子树的最少花费不多少,当然是不超过 阅读全文
posted @ 2017-08-22 10:23 dwtfukgv 阅读(175) 评论(0) 推荐(0)
2017年8月21日
HDU 6053 TrickGCD (莫比乌斯函数)
摘要: 题意:给一个序列A,要求构造序列B,使得 Bi <= Ai, gcd(Bi) > 1, 1 <= i <= n, 输出构造的方法数。 析:首先这个题直接暴力是不可能解决的,可以先找出最大值mmax和最小值mmin,然后枚举每个gcd,也就是最大公约数d,那么其他数就应该是d 2*d 3*d 4*d 阅读全文
posted @ 2017-08-21 21:50 dwtfukgv 阅读(183) 评论(0) 推荐(0)
51Nod 1554 欧姆诺姆和项链 (KMP)
摘要: 题意:中文题。 析:首先要使用KMP的失配函数 f ,对于长度为 i 的串,如果存在循环节那么 i % (i-f[i]) == 0,循环节的长度就是 i - f[i] ,当然次数就是 i / (i-f[i]),对于这个题,如果恰好是一个循环节,也就是 i % (i-f[i]) == 0,那么这个串一 阅读全文
posted @ 2017-08-21 15:03 dwtfukgv 阅读(213) 评论(0) 推荐(0)
2017年8月19日
HDU 6153 A Secret (KMP)
摘要: 题意:给定两个串,求其中一个串 s 的每个后缀在另一个串 t 中出现的次数。 析:首先先把两个串进行反转,这样后缀就成了前缀。然后求出 s 的失配函数,然后在 t 上跑一遍,如果发现不匹配了或者是已经完全匹配了,要计算,前面出现了多少个串的长度匹配也就是 1 + 2 + 3 + .... + j 在 阅读全文
posted @ 2017-08-19 21:49 dwtfukgv 阅读(191) 评论(0) 推荐(0)
HDU 6156 Palindrome Function (数位DP)
摘要: 题意:给定上 l,r,a, b,让你求从 l 到 r 这个区间内的在a进制到b进制如果是回文数就加上该进制的大小,如果不是,那么就加上1. 析:数位DP。 dp[i][j][k] 表示 i 进制下,前 j 位,回文串的长度是k有多少个,然后统计完后,再乘以进制即可,最后再加上那些不是回文。 但是好像 阅读全文
posted @ 2017-08-19 19:13 dwtfukgv 阅读(268) 评论(0) 推荐(0)
2017年8月18日
HDU 6148 Valley Numer (数位DP)
摘要: 题意:。。。 析:好久没写数位DP了,几乎就是不会了。。。。 dp[i][last][s] 表示前 i 位上一位是 last,当前的状态是 s,0表示非上升,1 表示非下降,然后就很简单了,只有 0 能转成 1,1就是最后的状态。 代码如下: 阅读全文
posted @ 2017-08-18 19:44 dwtfukgv 阅读(209) 评论(0) 推荐(0)
UVa 1513 Movie collection (树状数组)
摘要: 题意:给定给你一叠DV,编号1到n,1在最上面,n在最下面。然后现在给你m个操作,每次都指定一张CD,问要拿走这个CD需要挪走上面多少张CD,并且这个要拿走的CD放在这个叠CD的顶端。 析:这个题要倒着来做,我就是正着做的,太复杂了,因为每次操作后,都要再重新处理后面的数,时间复杂度太高。 如果是倒 阅读全文
posted @ 2017-08-18 12:42 dwtfukgv 阅读(284) 评论(0) 推荐(0)
HDU 6125 Free from square (状压DP+背包)
摘要: 题意:问你从 1 - n 至多选 m 个数使得他们的乘积不能整除完全平方数。 析:首先不能整除完全平方数,那么选的数肯定不能是完全平方数,然后选择的数也不能相同的质因子。 对于1-500有的质因子至多出现一次,有的可能出现多次,比如23,对于一个数最多出现一次,因为出现两次就超出500了。 而对于比 阅读全文
posted @ 2017-08-18 00:12 dwtfukgv 阅读(298) 评论(0) 推荐(0)
2017年8月17日
UVa 10766 Organising the Organisation (生成树计数)
摘要: 题意:给定一个公司的人数,然后还有一个boss,然后再给定一些人,他们不能成为直属上下级关系,问你有多少种安排方式(树)。 析:就是一个生成树计数,由于有些人不能成为上下级关系,也就是说他们之间没有边,没说的就是有边,用Matrix-Tree定理,很容易就能得到答案,注意题目给定的可能有重复的。 对 阅读全文
posted @ 2017-08-17 20:57 dwtfukgv 阅读(166) 评论(0) 推荐(0)
2017年8月16日
HDU 6069 Counting Divisors (素数+筛法)
摘要: 题意:给定 l,r,k,让你求,其中 l <= r <= 1e12, r-l <= 1e6, k <= 1e7。 析:首先这个题肯定不能暴力,但是给定的区间较小,可以考虑筛选,n = p1^c1*p2^c2*....*pn^cn,那么 d(n) = (c1+1) * (c2+1) * ...*(cn 阅读全文
posted @ 2017-08-16 17:23 dwtfukgv 阅读(146) 评论(0) 推荐(0)
2017年8月15日
BZOJ 2038 小Z的袜子(hose) (莫队算法)
摘要: 题意:中文题。 析:很著名的莫队算法,先把这个求概率的式子表达出来,应该是分子:C(x1, 2) + C(x2, 2) + C(x3, 2) + ... + C(xn, 2) 分母:C(n, 2),然后化成分数的表达形式,[x1(x1-1)+x2(x2-1)+...+xn(xn-1)] / (n*( 阅读全文
posted @ 2017-08-15 23:48 dwtfukgv 阅读(200) 评论(0) 推荐(0)
HDU 6127 Hard challenge (极角扫描)
摘要: 题意:给定 n 个点,和权值,他们两两相连,每条边的权值就是他们两个点权值的乘积,任意两点之间的直线不经过原点,让你从原点划一条直线,使得经过的直线的权值和最大。 析:直接进行极角扫描,从水平,然后旋转180度,就可以计算出一个最大值,因为题目说了任意直线不是经过原点的,所以就简单了很多,每次碰到的 阅读全文
posted @ 2017-08-15 18:58 dwtfukgv 阅读(155) 评论(0) 推荐(0)
HDU 6096 String (AC自动机)
摘要: 题意:给出n个字符串和q个询问,每次询问给出两个串 p 和 s 。要求统计所有字符串中前缀为 p 且后缀为 s (不可重叠)的字符串的数量。 析:真是觉得没有思路啊,看了官方题解,真是好复杂。 假设原始的字符串 数组为A,首先将A中的每个字符串都进行翻转,得到字符串数组B,然后,将A和B按字典序排序 阅读全文
posted @ 2017-08-15 10:40 dwtfukgv 阅读(521) 评论(0) 推荐(0)
2017年8月13日
LightOJ 1268 Unlucky Strings (KMP+矩阵快速幂)
摘要: 题意:给出一个字符集和一个字符串和正整数n,问由给定字符集组成的所有长度为n的串中不以给定字符串为连续子串的有多少个? 析:n 实在是太大了,如果小的话,就可以用动态规划做了,所以只能用矩阵快速幂来做了,dp[i][j] 表示匹配完 i 到匹配 j 个有多少种方案,利用矩阵的性质,就可以快速求出长度 阅读全文
posted @ 2017-08-13 21:18 dwtfukgv 阅读(264) 评论(0) 推荐(0)
CodeForces 219D Choosing Capital for Treeland (树形DP)
摘要: 题意:给一个n节点的有向无环图,要找一个这样的点:该点到其它n-1要逆转的道路最少。 析:很明显的树形DP,两次dfs,对于边,进行处理,如果是正向就是1,反向是-1,先进行dfs,计算出向子结点的方向要反转几条边,然后再第二次考虑,从父结点和子结点考虑。 代码如下: 阅读全文
posted @ 2017-08-13 13:56 dwtfukgv 阅读(192) 评论(0) 推荐(0)
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 58 下一页
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3