POJ
文章平均质量分 73
小胡子Haso
~~
展开
-
【POJ 3122】 Pie (二分+贪心)
【POJ 3122】 Pie分f个派给n+1(n个朋友和自己)个人 要求每个人分同样面积 但不能分到超过一个派 即最多把一整个派给某个人 问能平均分的最大面积二分平均面积 下界0 上界最大的一份派的面积 判断条件从大派开始分(保证尽量满足)如果能分出n+1份 这种分法就合适 下界上移 最后输出下界即可 注意二分判断上下界用esp 否则超时从大到小分派是一种贪心策略 太小的派可以扔掉 但原创 2015-08-24 09:15:49 · 1172 阅读 · 0 评论 -
【POJ 2031】 Building a Space Station (三维坐标求距离+最小生成树)
【POJ 2031】 Building a Space Stationn个空间球 可能存在包含或者覆盖的状况 想要让所有球都联通 每个球有坐标x,y,z和半径 问还需要搭建最少多长的路存储所有需要搭建的路 跑一遍最小生成树即可 注意原本就重叠的球距离0直接加入代码如下:#include #include #include #include #include #de原创 2015-08-24 17:47:30 · 1281 阅读 · 0 评论 -
【POJ 3258】 River Hopscotch (二分)
【POJ 3258】 River Hopscotch一窝牛要过河 河宽l 河中有n个许多石块 每个对应与牛所在的岸边有个距离 现在想要去掉m个石块后最小距离最大 问怎么去二分最小值最大化代码如下:#include #include #include using namespace std;int p[50002];int n,m;bool can(int原创 2015-08-23 20:14:13 · 944 阅读 · 0 评论 -
【POJ 3273】 Monthly Expense (二分)
【POJ 3273】 Monthly Expense (二分)一个农民有块地 他列了个计划表 每天要花多少钱管理 但他想用m个月来管理 就想把这个计划表分割成m个月来完成 想知道每个月最少花费多少 每个月的花费是这个月的花费加和 必须按计划表的顺序来所有天中花费中最大花费作为下界 所有花费加和作为上界 二分上下界间的花费可能 找出最少每月花费即可代码如下:#include原创 2015-08-23 18:52:09 · 946 阅读 · 0 评论 -
【POJ 1905】 Expanding Rods (二分)
【POJ 1905】 Expanding Rods公式+二分题意是一根棍 恰好夹在两面墙之间 在n温度下膨胀成(1+n*c)*l长度 问此时中的距原中点距离膨胀后变成一段弧 也就是圆的一部分 原来的棍子就变成了圆的截线。。。这不是高中很常见的图么。。。不会在电脑作图。。大家手画一下就知道了这样做几条辅助线 从圆心做截线的垂线延长到弧 设棍子原长L 膨胀后(弧)长s 膨胀后中点与原创 2015-08-23 23:54:46 · 1246 阅读 · 0 评论 -
【POJ 1265】 Area (Pick定理+叉积求多边形面积)
【POJ 1265】 Area从原点开始走 输入的是每次行走x y移动的长度 可正可负 最终会走会起点问围成的多边形内部点数 边上点数 和面积用到三个定理:1.网格中两格点间经过的格点数+1 = 两点横向和纵向距离的最大公约数2.网格中多边形面积s 边上格点n 内部格点x 则有公式 s = x+n/2-13.网格中多边形面积等于从一点逆时针走一圈 每相邻两个点分别与原创 2015-08-24 13:22:39 · 1222 阅读 · 0 评论 -
【POJ 1151】Air Raid
【POJ 1151】Air RaidDAG图(无回路有向图)的最小路径覆盖问题原创 2015-07-28 10:52:27 · 797 阅读 · 0 评论 -
【POJ 1416】 Shredding Company
【POJ 1416】 Shredding Companydfs貌似不剪枝也能过 数据水水的 不过练练剪枝拓一下思路每组两个数t num 输入0 0结束 分割数字num为任意组 让这几组加和最接近t(且<=t) 无解输出error 多解输出rejected 否则输出加和还有分割情况做搜索剪枝有点小经验 搜索的时候逆向搜索 求最大就从大往小搜 求最小就从小往大搜 这样一出现不足(求最大时)或溢出(求最原创 2015-08-10 14:05:07 · 1519 阅读 · 0 评论 -
【POJ 2442】Sequence
【POJ 2442】Sequence优先队列 m个序列 每个序列n个数 从每个序列中取一个数 可以组成一个长为m的序列 这样一共有n^m种组法 把所有组合的加和排序后输出前n小的和乍一看听高深的一个问题 其实想清楚了很简单 每一组中取一个数相加 第一组可以有n种取法 假设当前只有两组 按题意组合就是将第一组中n个数分别与第二组n个数相加 取出前n小的和那么现在再来一组 前两组一共有n*n种组原创 2015-08-09 23:45:48 · 1363 阅读 · 0 评论 -
【POJ 1442】 Black Box
【POJ 1442】 Black Box向一个恒递增序列中加数 一开始序列为空 不断加m个数 有n个询问 x1x2x3…xi每次个询问表示加第x个数后 第i小的数是几两个优先队列进行维护 一个递增一个递减 令递增队列对首为当前第i小的数 因此递减队列需要存i前的数 每当序列需要加一个数时 先与递减队列比较 如果比递减队列队首(前i-1个数中最大的数)小 将该数入递减队列 把递减队列对首拿出加原创 2015-08-09 23:30:31 · 1474 阅读 · 0 评论 -
【POJ 3020】Antenna Placement
【POJ 3020】Antenna Placement二分图的最大独立集问题原创 2015-07-29 08:19:07 · 1472 阅读 · 1 评论 -
【POJ 3041】Asteroids
【POJ 3041】Asteroids二分图最小顶点覆盖问题原创 2015-07-28 09:01:37 · 1106 阅读 · 0 评论 -
【POJ 1068】Parencodings
【POJ 1068】Parencodings原创 2015-07-27 17:14:40 · 623 阅读 · 0 评论 -
【POJ 1094】Sorting It All Out
【POJ 1094】Sorting It All Out原创 2015-07-05 23:16:41 · 744 阅读 · 0 评论 -
【POJ 1258】 Agri-Net
【POJ 1258】 Agri-Net原创 2015-07-03 15:07:45 · 1074 阅读 · 0 评论 -
【POJ 2240】 Arbitrage
【POJ 2240】Arbitrage原创 2015-06-29 15:00:17 · 911 阅读 · 0 评论 -
【POJ 2253】Frogger
【POJ 2253】Frogger原创 2015-06-26 22:26:51 · 704 阅读 · 0 评论 -
【POJ 1062】 昂贵的聘礼
【POJ 1062】 昂贵的聘礼原创 2015-06-20 00:45:30 · 2645 阅读 · 0 评论 -
【POJ 1860】 Currency Exchange
【POJ 1860】 Currency Exchange模拟货比交易 输入数据n 货币种类 m 交易种类 s 初始货币类型 v 初始持币数 m行分别为 A B(该种交易的两种货币A、B) RAB, CAB, RBA ,CBA A->B和B->A的交易汇率和手续费 交易后金额为(s-c)*r 最短路模板题 遍历看是否有正环(即可无限增加资本)写了两种做法 SPFA比BellMan耗时长 可啪SPF原创 2015-06-15 18:42:30 · 1124 阅读 · 0 评论 -
【POJ 2531】Network Saboteur
【POJ 2531】Network Saboteur图的搜索 剪枝真是门学问。。剪好了快的可真不是一倍两倍刚开始搜的思路有问题 TLE了 后来枚举点暴力搜了一发 两百多ms由于查找时权值是不断增加的 所以直接找集合间最大权的话不方便设置return点看disscuss发现有一大牛 建了两个数组 通过所有边权-两集合内部边权(去重) 得到答案 dfs的时候找最小内部边权即可 当前状态权值>当前最小内部原创 2015-08-10 11:15:46 · 886 阅读 · 0 评论 -
【POJ 1419】Graph Coloring
【POJ 1419】Graph Coloring求图的最大独立集原创 2015-07-28 10:41:40 · 1081 阅读 · 0 评论 -
【POJ 1789】Truck History
【POJ 1789】Truck History原创 2015-06-29 23:14:09 · 764 阅读 · 0 评论 -
【POJ 1125】Stockbroker Grapevine
【POJ 1125】Stockbroker Grapevine原创 2015-06-27 01:26:59 · 1179 阅读 · 0 评论 -
【POJ 2954】 Triangle
【POJ 2954】 Triangle很涨姿势的一道题原创 2015-06-15 12:22:03 · 868 阅读 · 0 评论 -
【POJ 3083】Children of the Candy Corn
POJ【3083】Children of the Candy CornDfs+Bfs原创 2015-06-15 01:45:51 · 935 阅读 · 0 评论 -
【POJ 2151】Check the difficulty of problems
【POJ 2151】Check the difficulty of problems原创 2015-08-05 16:51:55 · 704 阅读 · 0 评论 -
【POJ 2513】Colored Sticks
【POJ 2513】Colored Sticks原创 2015-08-02 21:29:34 · 906 阅读 · 0 评论 -
POJ【3687】Labeling Balls
POJ【3687】Labeling Balls原创 2015-07-12 18:11:57 · 792 阅读 · 0 评论 -
【POJ 3267】 The Cow Lexicon
【POJ 3267】 The Cow Lexicon原创 2015-07-11 18:25:24 · 836 阅读 · 0 评论 -
【POJ 2485】 Highways
【POJ 2485】 Highways原创 2015-07-03 14:58:34 · 1010 阅读 · 0 评论 -
【POJ 3259】Wormholes
【POJ 3259】Wormholes判断负环——BellMan/SPFA代码如下BellMan-Ford原创 2015-06-17 17:51:25 · 808 阅读 · 0 评论 -
【POJ 2049】Finding Nemo
【POJ 2049】Finding Nemo迷宫类Bfs原创 2015-06-14 17:41:56 · 1042 阅读 · 0 评论 -
【POJ 2965】 The Pilots Brothers' refrigerator
【POJ 2965】 The Pilots Brothers' refrigerato预处理用二进制(BFS)暴力枚举原创 2015-06-09 23:57:14 · 767 阅读 · 0 评论 -
【POJ 1753】Flip Game
【POJ 1753】Flip Game二进制+(BFS)暴力枚举原创 2015-06-09 01:44:41 · 750 阅读 · 0 评论 -
动规-POJ【2385】Apple Catching
题目链接:POJ【2385】Apple Catching题目大意:1、2两棵树上往下落苹果树下一头牛 初始位置在第一棵树下 牛的移动所消耗时间不计(即可以瞬移) 但只能移动W次 一共掉T次苹果 问牛最多可以吃几颗解题思路:二维数组 把原本第一维省去了 因为苹果只可能从1或2树上掉落 可以用下标(移动次数)%2+1 来记录 第一维记录移动次数 第二维记录掉落苹果数目 故存在j (※注原创 2015-01-21 20:00:14 · 778 阅读 · 0 评论 -
【POJ 1129】Channel Allocation
【POJ 1129】Channel Allocation暴搜做的 虽然放在了剪枝里。。。 大水题 不过好歹是训练计划第二周最后一题 做个纪念发一贴~(然而只是把上周计划完成了。。直接上代码:#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#define INF 0x3f3f3f3fusing na原创 2015-08-10 19:16:26 · 999 阅读 · 0 评论 -
【POJ 1039】 Pipe (叉积判方向+叉积求交)
【POJ 1039】 Pipe一个水管由多个拐点组成 给出每个拐点的上点 管宽1 即管上下两点分别为(x,y) (x,y-1)问从管口射入光线能到达的最远的x 光线不可折射反射分析可知 光线射得最远 一定会夹在上下两个拐点之间 画画图就明白了 并且一定是一上一下这样枚举每两个拐点 每两个可以组成(x1-x2,(y1-1)-y2) (x1-x2,y1-(y2-1))这样两个上下向量原创 2015-08-25 09:38:05 · 1028 阅读 · 0 评论 -
【POJ 3974】 Palindrome
【POJ 3974】 PalindromeManacher纯模板题 忘记的时候可以拿来找感觉代码如下:#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>using namespace std;char str[1111111];char nwstr[2333333];int p[2333333];原创 2015-08-12 14:11:48 · 925 阅读 · 0 评论 -
【POJ 1837】 Balance
【POJ 1837】 Balance简单01背包问题 有个小技巧就是去除负下标 一维数组表示用上的砝码数 二维表示当前砝码数下重量 由数据可知 最大重量为25*20*15 = 7500 最小也就是-7500 但是负下标会越界 因此我们把他们统一增加7500 范围变成(-7500)0~15000(7500) 中点0变成7500这样变成了一般01背包问题 枚举加砝码数量 dp最大方案数即可 加了个挫优原创 2015-08-12 20:01:00 · 948 阅读 · 0 评论 -
【POJ 2187】 Beauty Contest (凸包-Graham扫描算法)
【POJ 2187】 Beauty Contest (凸包-Graham扫描算法)找平面最远点对 数据很大 用暴力会T..我感觉……扫描出个凸包 然后枚举凸包上的点即可 没坑 int也可过 注意重边跟共线就行 代码下附赠几组数据代码如下:#include #include #include #include #include #include #include原创 2015-08-27 16:45:36 · 1032 阅读 · 0 评论