摘要:
题目大意:求二分图最小点覆盖和最大独立集。 题目分析:如果选中一个点,那么与这个点相连的所有边都被覆盖,使所有边都被覆盖的最小点集称为最小点覆盖,它等于最大匹配;任意两个点之间都没有边相连的最大点集称为最大独立集,它等于总节点数减去最大匹配数。 代码如下: 阅读全文
摘要:
题目大意: 给定一个数 x,设它十进制展从高位到低位上的数位依次是 a0, a1, ..., an - 1,定义交错和函数: f(x) = a0 - a1 + a2 - ... + ( - 1)n - 1an - 1 例如: f(3214567) = 3 - 2 + 1 - 4 + 5 - 6 + 阅读全文
摘要:
题目大意:给n个数,编号为1~n,取三个编号不同的数,使表达式(a+b)^c的值最大。 题目分析:将这n个数按二进制位建立一棵trie。枚举i、j的和,查询亦或最大值,但在查询之前要把i、j在trie中删除,查询完毕后再插入trie。 ps:用数组实现trie会超时,因为每次test case之前都 阅读全文
摘要:
题目大意:给四条线段,问能否构成一个矩形? 题目分析:先判断能否构成四边形,然后选一条边,看另外三条边中是否为一条与他平行,两条垂直。 代码如下: 阅读全文
摘要:
题目大意:给n个区间,有的区间可能覆盖掉其他区间,问没有完全被其他区间覆盖的区间有几个?区间依次给出,如果有两个区间完全一样,则视为后面的覆盖前面的。 题目分析:区间可能很长,所以要将其离散化。但离散化之后区间就变成了连续的,不再是离散的。也就是叶子由左右端点为u、u变成了左右端点为u-1、u,左右 阅读全文
摘要:
题目大意:给一个n个数的序列,问这个序列删掉一个数后是否有序。 题目分析:找最长上升子序列和最长下降子序列,只要有一个的长度不小于n-1即可。 代码如下: 阅读全文
摘要:
题目大意:在nxm的方格中,每一个1x1的小方格中都有一堵沿对角线的墙,并且每堵墙都有一个坚固程度,这些墙将nxm的方格分割成了若干个区域。现在要拆除一些墙,使其变成一个区域。 题目分析:将区域视作点,将墙视作边,这样问题就变成了求最小生成树。 代码如下: 阅读全文
摘要:
题目大意:n个小孩按顺时针站成一圈,每次会有一个小孩出队(第一个出队的小孩已知),在他出队时会指定下一个出队的小孩,直到所有的小孩全部出队游戏结束。第p个出队的小孩会得到f(p)个糖果,f(p)为p的正约数个数。问获得最多糖果的小孩是谁?并求出他获得的糖果数。如果有多解,只输出最先出队的那个小孩。 阅读全文