摘要:
题意: 给你n个人,再给你每个人都喜欢哪些人,让你找到一个最大的集合数,要求这个集合里面任意两个人都不喜欢彼此。 思路: 直接就是在问最大点权独立集元素个数,没啥解释的一遍二分图就行了,输出 n - sum / 2,说下为什么有的最...
阅读全文
posted @ 2014-05-29 09:02
猫携
阅读(23)
推荐(0)
摘要:
题意: 一个战场,往战场上投放伞兵,每个伞兵不能后退,只能往前走,问你最少多少个伞兵可以吧所有的点都占领。 思路: 这个题是最小路径覆盖,最小路径覆盖 = n - 最大匹配数,首先说下什么是最小路径覆盖,给你一个有向无环图,问你最少用...
阅读全文
posted @ 2014-05-29 09:01
猫携
阅读(26)
推荐(0)
摘要:
题意: 给你n个点,问你在哪里选择开会地点,使得到所有点的最长路径最短. 思路: n很小,直接Floyd,然后暴力枚举就行了。 #include#define INF 100000000int map[110][110];int mi...
阅读全文
posted @ 2014-05-29 08:59
猫携
阅读(24)
推荐(0)
摘要:
题意: 给你一个有向图,两点之间有多种连接方式,然后每次询问都问你点A,B之间有哪些方式可以到达,每个小字母是一个方式. 思路: 很巧妙的位运算和Floyd应用,借助Floyd的更新过程,去更新任意两组边组合起来的长边,如 map...
阅读全文
posted @ 2014-05-29 08:56
猫携
阅读(33)
推荐(0)
摘要:
题意: 给你一个n*m的格子,问你能不能用1*2的格子把他铺满,有的位置是不能被铺的。 思路: 水题,直接把个相邻的并且都是可以铺的点连一条边然后匹配一遍就行了,提醒一个地方,就是输入不能铺的坐标的时候是 先输入列再输入行。 #i...
阅读全文
posted @ 2014-05-27 16:55
猫携
阅读(26)
推荐(0)
摘要:
题意: 有n只老鼠,m个洞,每个洞最多可以藏一只老鼠,每个老鼠的移动速度都是v,给你他们的当前坐标,和洞的坐标,突然老鹰来了,他们必须在s秒内跑到一个洞藏起来,问你最少有多少只老鼠被抓走了。 思路: 二分图匹配裸题,关键就是那句一个...
阅读全文
posted @ 2014-05-27 16:28
猫携
阅读(25)
推荐(0)
摘要:
题意: n个男孩和m个女孩,给你他们谁和谁彼此了解,问你要找到一个集合,使得这个集合中的男孩和女孩相互了解,并且人数最多。 思路: 简单题目,其实就是在求最大点权独立集元素个数,先说下点券独立集的概念,就是给你一些关系,让你找到一个最...
阅读全文
posted @ 2014-05-27 16:04
猫携
阅读(24)
推荐(0)
摘要:
题意: 有一个任务,给你提供n太服务器,让你在这n太服务器中选出k台完成这个任务,要求是每台服务器的工作时间相同,总的花费最小。 思路: 题目中给出对于每台服务器有这个式子: Total time = Processing time + ...
阅读全文
posted @ 2014-05-27 15:26
猫携
阅读(14)
推荐(0)
摘要:
题意: 让你求出一个最优比率生成环。思路: 又是一个01分化基础题目,直接在jude的时候找出一个sigma(d[i] * x[i])大于等于0的环就行了,我是用SPFA跑最长路判断的环,这里注意一点就是刚开始的时候吧每个点都入队,还有提醒一个...
阅读全文
posted @ 2014-05-23 08:39
猫携
阅读(36)
推荐(0)
摘要:
题意: 给你一组"数",一共n个,每个数有两个权值,价钱a[i],代价b[i],让你选择n - k使得 sigma(a[i]) / sigma(b[i]) * 100 最大; 思路: 毫无疑问这个是01分数规划的最进本形式,唯一的...
阅读全文
posted @ 2014-05-23 08:38
猫携
阅读(30)
推荐(0)
摘要:
题意: 让你求一颗最小比率生成树。 思路: 我总结过了,在这里:http://blog.csdn.net/u013761036/article/details/26666261 提示几个地方,这个题目的最小树记得用普利姆,别用克...
阅读全文
posted @ 2014-05-23 08:36
猫携
阅读(28)
推荐(0)
摘要:
总结下01分数规划: 01分数规划通常分为三类 (1)基础01分数规划 (2)最优比率生成树 (3)最优比率生成环 首先01分数规划是处理这样一类问题的,给你n个二元组,这个两个元素设为a[i] ,b[i], a[i]是得到这个物品所能得到的价值,b[...
阅读全文
posted @ 2014-05-23 08:32
猫携
阅读(36)
推荐(0)
摘要:
题意: 给你一个有向图,问你这个图是不是单连通图,单连通就是任意两点之间至少存在一条可达路径。 思路: 先强连通所点,重新建图,此时的图不存在环,然后我们在看看是否存在一条路径可以吧所有点都覆盖了就行了,直接一遍拓扑排序,只要拓扑排序唯...
阅读全文
posted @ 2014-05-22 19:41
猫携
阅读(67)
推荐(0)
摘要:
题意: 给你两个串,问你s1的前缀和s2的后缀最长公共部分是多少。 思路: 根据KMP的匹配形式,我们求出s1的next,然后用s1去匹配s2,输出当匹配到s2的最后一个的时候的匹配位置就行了。 #include#include#d...
阅读全文
posted @ 2014-05-22 19:37
猫携
阅读(24)
推荐(0)
摘要:
next数组是KMP的核心,但对于next数组我们总是有时候感觉明白了,但有时候又感觉没明白,现在我就说下我自己对KMP中next数组的理解,首先next[i]上的数字的意义,next[i]表示的是当匹配到匹配串的第i个字母适配的时候,改跳到的位置,为什么要跳...
阅读全文
posted @ 2014-05-18 13:21
猫携
阅读(41)
推荐(0)
摘要:
题意: 给你两个字符串,让你求str1+str2,就是把1的后面和2的前面重叠的地方只显示一遍就行了 abc + bcd = abcd,要求和的长度最小,和最小的前提下求字典序最小,还有就是两个串可以交换位置的,cdab + abcd = abcd...
阅读全文
posted @ 2014-05-18 13:17
猫携
阅读(32)
推荐(0)
摘要:
题意: 给你一个串,问你他的所有前缀子串在本串中的出现次数,注释:abc的前缀子串是 a ab abc; 思路: 还是利用了next数组,先对子串求出next数组,再开一个数组dp,初始化全是1,因为每个以当前i结尾的都至少是1,然后...
阅读全文
posted @ 2014-05-17 23:55
猫携
阅读(44)
推荐(0)
摘要:
题意: 给你两个串,问你第二个串是从第一个串的什么位置开始完全匹配的。。 思路: 裸的KMP,也是我的第一个KMP,说下对KMP的理解吧,首先对于非优化的方法求匹配,时间复杂度应该是O(n*m) ,而KMP则是O(n + m)(感觉...
阅读全文
posted @ 2014-05-17 23:52
猫携
阅读(25)
推荐(0)
摘要:
题意: 给你两个串,问你串a在串b中出现了多少次。 思路: 直接匹配,KMP时匹配到匹配串的最后一个的时候不用跳出,直接匹配就行了,最后一个'/0'不会和目标串匹配,所以经过next[l2]就直接自动找到该去的位置了,怎么说呢,今天...
阅读全文
posted @ 2014-05-17 23:50
猫携
阅读(25)
推荐(0)
摘要:
题意: 给你一个字符串,让你找到一些字符串,这个字符串是从第一个字母开始的,并且他可以分成1个一上循环子结构够成的,比如 abcabcabc 那么当前的这个串就是三个abc构成的,他的AK值就是3,对于输出的答案中就会包含当前这个状态,表示为9 ...
阅读全文
posted @ 2014-05-17 23:48
猫携
阅读(52)
推荐(0)
摘要:
题意: 给你一个项链,问你最少加多少个珠子能满足整个项链是一个循环的项链(首尾相连) 思路: KMP的简单应用只要了解next数组的意义就好说了,下面总结下 next在循环方面的常用应用 (1)i - next[i] 最小循环节(第...
阅读全文
posted @ 2014-05-17 23:43
猫携
阅读(53)
推荐(0)
摘要:
题意: 给以一个图,每个有向边都有两个权值,a,b其中a是保留这条边的花费,b是删除这条边的花费,让你删去一些边使图满足一下要求: (1)只有一个起点和一个终点 (2)所有的边都是又向的(题目给的就是有向的) (3)对于起点,出度 = 入度 + ...
阅读全文
posted @ 2014-05-16 20:04
猫携
阅读(41)
推荐(0)
摘要:
题意: 给你三个字符串,问你前两个能不能拼成第三个串。 思路: 直接记忆化神搜就行,思路水,看下代码就知道了。这个题目我感觉最大公共子序列dp的作法是错的,虽然有人ac了,随便一组数据比如 abc abc abccba。 #...
阅读全文
posted @ 2014-05-12 14:50
猫携
阅读(22)
推荐(0)
摘要:
题意: 给你一个区间,问这个区间有多少个斐波那契数. 思路: 水的大数,可以直接模拟,要是懒可以用JAVA,我模拟的,打表打到1000个就足够用了... #include#includeint a[110] ,b[110];in...
阅读全文
posted @ 2014-05-11 20:55
猫携
阅读(16)
推荐(0)
摘要:
题意: 给以一个无向图,0 - n,警察在0,他们有k个警队,要派一些警队去1--n个城市抓小偷, 问所有吧所有小偷全抓到然后在返回0的最小路径和是多少,当地i个城市被攻击的时候他会通知i-1城市,也就是说要么同时消灭他俩,要么消灭i-1在消灭i;...
阅读全文
posted @ 2014-05-08 21:28
猫携
阅读(17)
推荐(0)
摘要:
题意: n个社团给同学发传单,同学一共有1--2^31这么多,每个社团有三个数A ,B ,C ,只有 满足 A ,A + C ,A + C + C ...A + KC #define N 20000 + 100typedef struct{ _...
阅读全文
posted @ 2014-05-06 21:04
猫携
阅读(16)
推荐(0)
摘要:
题意: 给你一个有向图,然后给你起点和终点,问你从起点到终点有多少个关键点,如果当前的这个点删除了就无法从起点到终点,那么这个点就是一个关键点.. 思路: (1)有两种做法,我用的是最大流的,另一种是先跑最短路然后搜索,先说最大流,最大...
阅读全文
posted @ 2014-05-05 17:06
猫携
阅读(43)
推荐(0)
摘要:
题意: 给你个函数,F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x ,给你一个y,x的范围是0--100 问你最小的 F(x) 思路: 本人推数学公式啥的没啥天赋,一看这个题目肯定是三分(自己感觉),然后直接...
阅读全文
posted @ 2014-05-03 19:50
猫携
阅读(24)
推荐(0)
摘要:
题意: 给你n个点,让你求最近的两个点的距离是多少. 思路: 这个题目我没思路,我在网上看的是什么分治 + 鸽巢原理,分治我知道,鸽巢原理我也知道,但是这个题目就是没有证明出来他和鸽巢原理有jm关系,总之就是先以x或者y优先sort一...
阅读全文
posted @ 2014-05-03 18:55
猫携
阅读(13)
推荐(0)
摘要:
题意: 给你一个初始串"MI",这个串有三种操作, (1)M后卖弄可以直接复制 ,MI -> MII (2)三个III可以变成一个U,MUIII -> MUU (3)连续的两个U可以直接删除,MIUUU -> MIU 每次输入一个字符串,问你这个字符...
阅读全文
posted @ 2014-05-03 18:48
猫携
阅读(32)
推荐(0)
摘要:
题意: 让你找到一个最小的圆柱去覆盖所有的竖直的线段.. 思路: 三分,直接去三分他的半径,因为想下,如果某个半径是最优值,那么 从R(MAX->now->MIN)是的 V肯定是先增大然后减小再增大,也就是满足凹凸性,所以可以三分,三...
阅读全文
posted @ 2014-05-03 18:34
猫携
阅读(38)
推荐(0)
摘要:
题意: XCOM Enemy Unknown Time Limit: 500/200 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Submission(s): 814 Acc...
阅读全文
posted @ 2014-04-30 21:39
猫携
阅读(24)
推荐(0)
摘要:
题意: 给你四个点,问你第四个点是否在前三个点围成的三角形的外接圆上. 思路: 水题,就是练练用魔板罢了,当该三角形是锐角三角形的时候,圆心是任意两条边中垂线的交点,半径是圆心到任意一点的距离,否则圆心就是最长的那条边的中点位置,半径...
阅读全文
posted @ 2014-04-30 21:34
猫携
阅读(48)
推荐(0)
摘要:
题意: 求最大子矩阵,但是相邻的列之间可以相互交换... 思路: 回想下固定的情况,记得那种情况是开俩个数组 L[i] ,R[i],记录小于等于i的最左边和最右边在哪个位置,对于这个题目,可以交换,也就是说顺序是可以自己随意更改的,...
阅读全文
posted @ 2014-04-30 21:28
猫携
阅读(42)
推荐(0)
摘要:
题意: 给你n个王子和m个公主,每个王子可以和自己喜欢的公主结婚,问你在不影响最大匹配的前提下每个王子都可以去哪些公主. 思路: 所有王子向他喜欢的公主连一条边,然后匹配一遍,之后再每个匹配的公主连一条指向娶她的王子一条边,然后对...
阅读全文
posted @ 2014-04-30 21:24
猫携
阅读(29)
推荐(0)
摘要:
题意: 求s到t的最短路,如果路径相同求那么要求另一个权值尽可能的小. 思路: 水题,就是spfa的比较那个地方多了一个可以更新的机会,当(s_x[xin] > s_x[tou] + E[k].cost || s_x[xin] == ...
阅读全文
posted @ 2014-04-30 21:03
猫携
阅读(28)
推荐(0)
摘要:
题意: 给你一个平面图,让你输出(1,1),(n ,n)的最小割.. 思路: 看完题想都没想直接最大流,结果TLE,想想也是 G,这样的图超时不冤枉,后来在网上看了题解,都说是什么论文题目,果断去看论文结果没看懂,后来看了下别人的理解...
阅读全文
posted @ 2014-04-30 20:54
猫携
阅读(20)
推荐(0)
摘要:
题意: 给你一个字符串,问你能不能拆成两个相同的字符串,顺序不能改变. 思路: 咋一看数据有点大,搜索过不去,但想想优化的地方很多,而且每个字母最多出现四次,所以多几个剪纸应该会过. #include#include#define ...
阅读全文
posted @ 2014-04-28 15:42
猫携
阅读(15)
推荐(0)
摘要:
题意: 给你一些点,这些点有各自的初始位置,移动速度和方向,问你什么时候任意两点中最长的距离最小,求时刻和此时的距离.. 思路: 感觉题目很赞,一开始想不到三分,因为么有办法证明他是凹性或者凸性函数,后来师傅给我说了几个特例,自己在想想...
阅读全文
posted @ 2014-04-27 15:57
猫携
阅读(20)
推荐(0)
摘要:
题意: 求点到圆,然后在到矩形的最短路. 思路: 把圆切成两半,然后对于每一半这个答案都是凸性的,最后输出两半中小的那个就行了,其中有一点,就是求点到矩形的距离,点到矩形的距离就是点到矩形四条边距离中最小的哪一个,求的方法有很多,...
阅读全文
posted @ 2014-04-27 15:43
猫携
阅读(49)
推荐(0)