zoj 3305 - Get Sauce

题目:打酱油(⊙v⊙),有n种原料,和一些配方,现在要在每种原料最多用一次的情况下,配出最多的配方。 分析:dp,01背包。因为原料种类少,可以用2进制表示每种配方,按配方01背包即可,(容积(1     这里在计算过程中需要剪枝,否则会TLE,配方有包含关系取下的即可。(Orz大黄。。) 说明:...

2014-12-30 19:23:38

阅读数:905

评论数:0

zoj 3228 - Searching the String

题目:给你一个长目标串str,和一些模式串,求每个串出现的次数。模式串有可覆盖和不可覆盖两种。 分析:字符串,多串匹配,AC自动机。由于数据有可能不允许相交,所以记录上一个的结束位置。             题目的数据比较猥琐,可能相同,采用一个 Fath域记录第一次出现的 id,计算一次就...

2014-12-23 13:20:09

阅读数:538

评论数:0

hdu 3065 - 病毒侵袭持续中

题目: 中文题,给你一些病毒特征码,一个大的病毒串,问每个特征码出现的次数。 分析:多字符串匹配,AC自动机。数据规模较大,使用 AC自动机。 说明:注意不是大写字母的时候,直接返回 root。  /* 题目:多字符串匹配 分析:数据规模较大,使用 AC自动机 说明:...

2014-12-23 11:25:17

阅读数:774

评论数:0

hdu 2896 - 病毒侵袭

题目:给你一些病毒的特征串,再给你一些网站的代码,统计每个网站中出现的病毒和被攻击的网站数。 分析:字符串,AC自动机。数据规模较大,使用 AC自动机。具体参照本站的:AC自动机总结。 说明:开始时把求解 fial合并到 query中了,导致多次 TLE,。。。囧。。。  #include ...

2014-12-23 10:43:48

阅读数:574

评论数:0

zoj 3471 - Most Powerful

题目:在火星上有一些原子,他们相互碰撞会释放能量(例如a、b),并且后面的原子会消失(b消失);             现在给你每个原子各一个,问能产生的最大能量值。 分析:状态压缩 DP。按取数的个数为阶段进行 DP,因为与顺序无关,找到下一状态更新即可。             如果只...

2014-12-22 14:53:45

阅读数:643

评论数:0

hdu 2222 - Keywords Search

题目:给你一些单词构成的词典,统计出现过的单词个数。 分析:字符串,AC自动机。比较裸的AC自动机详细可参照本空间的AC自动机总结:             http://blog.csdn.net/mobius_strip/article/details/22549517#comments 说明...

2014-12-21 19:37:16

阅读数:663

评论数:0

UVa 201 - Squares

题目:给你一个由点组成的网格,再给一些连结相邻点的操作(横向、纵向),统计里面的正方形。 分析:模拟。直接用两个数组,记录横线和竖线,统计时枚举顶点扫描即可。 说明:先输出小的╮(╯▽╰)╭。 #include #include #include #include #include ...

2014-12-18 09:57:48

阅读数:4603

评论数:14

UVa 699 - The Falling Leaves

题目:给你一棵二叉树,每个节点上有一些叶子,每个节点的左右子树的根节点分别在左右相邻位置;             现在所有叶子都垂直落下,问每一堆各有多少叶子。 分析:数据结构,递推。树的遍历。             首先,利用一个数组记录每堆的数量,从500位置开始作为根的位置;  ...

2014-12-15 09:10:35

阅读数:816

评论数:0

UVa 103 - Stacking Boxes

题目:给你一些n维的盒子,问最多能套多少个在一起。 分析:dp,lis,最大上升子序列,贪心。             因为,对于两个盒子来说,维度按照递增序嵌套时是最大嵌套可能(可归纳证明);            (1维显然成立;k维到k+1维最多2个维度不同,他们都按递增序有最大嵌套可能) ...

2014-12-13 22:21:48

阅读数:670

评论数:0

UVa 10703 - Free spots

题目:给定一个矩形点集,从里面扣掉一些小矩形点集,问最后还有多少个点。 分析:简单题。由于数据较小,暴力就可以了,数据大时,可使用线段树。 说明: #include #include #include #include using namespace std; bo...

2014-12-13 18:09:40

阅读数:1143

评论数:0

UVa 674 - Coin Change

题目:给你五个面值的货币1,5,10,25,50,问表示N有多少种不同方法。 分析:dp,多重背包。整数拆分用背包。 说明:打表计算,查询输出。 #include #include using namespace std; int F[7490] = {0}; int c[5] = {1,...

2014-12-13 13:07:59

阅读数:582

评论数:0

UVa 10131 - Is Bigger Smarter?

题目:有人认为大象的体重和智力有一定的正相关性,现在给你一些数据,找到一个最长的反例序列。 分析:dp,LIS,醉倒上升子序列。对W排序求出S的最大下降子序列即可,存储路径搜索输出。 说明:先读到EOF再处理。 #include #include #include #include #in...

2014-12-13 07:53:29

阅读数:773

评论数:0

UVa 116 - Unidirectional TSP

题目:在一个二维的平面网格中从左西向右走,每个格子里有个数字每次只能走到本行或者上一行或者下一行;             求一条从西到东的路径,使得路径上的数字和最大,如果都是最大,找到最路径小字典序列。 分析:dp,动态三角形类似物。逆向求解方便找到最小字典序。             状态:...

2014-12-13 07:40:16

阅读数:660

评论数:0

UVa 12578 - 10:6:2

题目:一个绿色矩形上有个红色的圆,计算红色和绿色的面积比。 分析:计算几何,简单题。直接用公式即可。 说明:不要用EOF,会TLE。 #include #include #include #include #include #include using namespace st...

2014-12-12 22:01:14

阅读数:759

评论数:0

UVa 10141 - Request for Proposal

题目:政府要做n个项目,对p个公司招标,政府想知道哪家公司能做的项目最多并且花费更少。 分析:简单题。因为每个厂家提供的方案都在招标的列表中,直接计数比较即可。 说明:注意数据格式,有几天没刷题了,要赶快不少( ⊙ o ⊙ )啊!。 #include #include #include #i...

2014-12-12 10:40:48

阅读数:802

评论数:0

UVa 10032 - Tug of War

题目:有n个人分成两组,两组人数差不能超过1,找到两组的人重量之差的最小值。 分析:dp,状态压缩01背包。zoj1880升级版。             首先,考虑二维背包。             因为必须放在两个组中的一组,直接背包所有可到状态,取出相差不超过 1的最接近 sum/2的...

2014-12-10 10:02:50

阅读数:1059

评论数:0

UVa 571 - Jugs

题目:给你两个杯子,每次可以给某个杯子灌满,清空,或者将一个杯子的水倒入另一个杯子;             使得一个杯子为满或者另一个杯子为空,求最少的操作次数使得B杯中的水为目标值。 分析:搜索。韩信走马分油。             设状态(a,b)为两倍的水容量,则最多1000000...

2014-12-06 23:48:47

阅读数:671

评论数:0

UVa 356 - Square Pegs And Round Holes

题目:在一个2n*2n的网格中间画一个直径为2n-1的圆,问圆内部的格子以及和圆相交的格子个数。 分析:计算几何。分别计算出圆和每个整数横坐标的交点(xi,yi)。             ceil(yi)- ceil(yi-1)即为每列的相交格子个数,floor(yi)即为每列圆内格子个数。...

2014-12-06 00:13:43

阅读数:1770

评论数:0

UVa 10496 - Collecting Beepers

题目:一个机器人从一个起始点出发(只能上、下、左、右运动),经过一些关键点后回到起点,求总路径最小长度。 分析:图论,搜索。两点间的距离为:abs(x1-x2)+ abs(y1-y2);每个点必须至少经过一次。             如果存在一个点走过多次,那么他一定在其他两点间的路径上,则这个...

2014-12-05 23:29:54

阅读数:814

评论数:0

UVa 10622 - Perfect P-th Powers

题目:给你一个数,找到他能表示一个幂的最大的指数。 分析:数论。直接枚举50000内所有的底数即可。 说明:1.注意负数的情况,先算对应整数,在取反判断;2.log10()函数的精度问题。 #include #include #include #include #include #...

2014-12-03 16:49:51

阅读数:1047

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭