- 博客(10)
- 收藏
- 关注
原创 2012 ACM/ICPC 成都赛区网络赛 HDU 4296
比赛时这道题没做出来,很蛋疼,只因为没理解 “would like to minimize PDV of the whole building, denoted as the largest PDV of all floors.”题目要求的是:每一层都有一个PDV值,求这么多层中的最大值。而我之前只是求了整栋楼所有楼层PDV累加和的最小值。分析题目,很显然是贪心。先从N层中选一个fl
2020-07-15 01:05:41
1992
原创 POJ 1226 Substrings
题目链接:http://poj.org/problem?id=1226给一些字符串,求公共的最长子串的长度。用到了KMP算法我的解法很一般,先对字符串排个序,最短的在最前面。然后通过枚举(从长到短)每一个最短串的子串,看其或其反串是否是其他所有串的子串。代码:#include #include #include #include using namespac
2012-10-27 21:50:27
704
原创 POJ 3450 Corporate Identity 、 POJ 3080 Blue Jeans
这两题都是找出所给字符串的最长公共子串。本来是简单的枚举,直接枚举第一个串s[0]的所有子串(从长到短),看是否是其他所有字符串的子串,若是,则只需再将s[0]的相同长度的其他子串检测一遍就好了。再找满足条件的子串中的最小串就很简单了(其实检测过程中比较一下即可)。但该方法效率太低,超时。怎样才能高效呢?具体是这样的:枚举s[0]的所有后缀,以后缀为匹配串,将其与其他串匹配。在
2012-10-18 23:54:43
410
原创 POJ 2752、2406、1961 KMP的next[](或p[])简单应用
以下几题都是对p[](或next[])的简单应用。做了这几题,能在一定程度上加深对p数组初始化的理解。POJ 2752 Seek the Name, Seek the Fame题目的意思就是求一个字符串的子串可能的长度,子串需满足既是母串的前缀又是母串的后缀。这题是对p数组的应用。想一下字符串自己跟自己匹配的过程,就知道怎么做了。假设s1和s2匹配(s1==s2,令m=strl
2012-10-17 19:22:17
377
原创 KMP入门题 HDU1686、hdu 1711、hdu 2203
几道简单的可以用KMP解答的题目,也是刚学KMP时做的。学习KMP给我最大帮助的是此博文:http://www.matrix67.com/blog/archives/115/(要是对KMP还不是太懂的,建议去看看此博文)HDU 1686 Oulipo题意就是给两个字符串W和T,问W在T中出现的次数。代码:#include#include char a[10
2012-10-16 10:28:25
548
原创 poj 3630 || zoj 2876 ||hdu 1671 Phone List (Trie树的应用)
这道题也是Trie树 应用的入门题,题意:问输入的一组电话号码中有没有某一个号码是另一个的前缀。开始的代码在hdu上AC了,交到poj上却超时了。后来,看了discuss,发现自己用了new操作,而没有先开辟空间。若用缓存,每次有新节点时直接存放在已开辟的空间内,会节省很多时间。之后把代码稍改了改,就ac了,188ms~~题目链接:POJ 3630、 ZOJ 2876 、HDU
2012-09-15 14:38:51
645
原创 hdu1251 统计难题 数据结构之Trie树
哈哈,第一次用Trie树,从网上找了个模板改了改,然后自己写了search()。题目很简单,就不解释了。#include#include const int sonnum=26, base='a';struct Trie{ int num; //记录有多少个单词能到达次,也即相同前缀的个位 //bool terminal; //判断是否是结束节点 struct Trie
2012-09-13 21:33:44
423
原创 计算几何初步之凸包(POJ 1113、2007、1873、1228、3348)
做凸包题之前必须选一个正确的模板,自己写也行,但要保证正确,我就写错了,菜呀凸包模板(Graham算法):/*==================================================*\| Graham求凸包 O(N * logN)| CALL: nr = graham(pnt, int n, res); res[]为凸包点集;\*==========
2012-09-06 18:45:05
1146
原创 计算几何入门题之点,线,面,形基本关系以及点积叉积的理解
本人菜鸟一只,暑期做了一点计算几何的题目,现先将我之前转载的《计算几何题目推荐》的入门题的第一部分的解答与大家分享。本篇所涉的题主要是与点,线,面,形基本关系以及点积叉积的理解相关的15道题,相对还是很基础的。但我这弱菜做的不太轻松。POJ 2318 TOYS题意:判断箱子每个块内有多少个玩具分析:对于每个玩具的坐标,采用二分查找以确定玩具所在的块,其中玩具与分界(线段)
2012-08-26 14:57:47
1519
2
转载 计算几何题目推荐(转)
先是计算几何入门题推荐 :计算几何题的特点与做题要领:1.大部分不会很难,少部分题目思路很 巧妙2.做计算几何题目,模板很重要,模板必须高度可靠。3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面大部分是模 板。如果代码一片混乱,那么会严重影响做题正确率。4.注意精度控制。5.能用整数的地方尽量用整数,要想到扩大数据的方法(扩大一倍, 或扩大sqrt2)。
2012-08-07 22:38:12
621
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人