poj
oranges_c
落寞是岁月的痕迹
展开
-
【POJ3414】Pots(BFS)
就是把操作用string保存。#pragma comment(linker, "/STACK:1024000000,1024000000")#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <algorithm>#include <cstdlib>#in原创 2016-10-21 20:06:37 · 221 阅读 · 0 评论 -
【POJ2504】Bounding box(计算几何)
题目链接 题目大意: 给你一个正n边形的三个点,求一个边平行于坐标轴的面积最小的矩形,能覆盖正n边形的所有点。这题用到向量旋转公式(逆时针旋转,若顺时针则r改为-r): (x1−x0)=(x′−x0)∗cos(r)+(y′−y0)∗sin(r);(x1 - x0) = (x' - x0) * cos(r) + (y' - y0) * sin(r); (y1−x0)=(原创 2017-01-05 19:31:57 · 494 阅读 · 0 评论 -
【POJ1986】Distance Queries(lca的应用)
题目链接题目大意: 给你n个点,m条边(是一颗树 q个查询。 每个查询给出两个点,求两点的距离。感觉上树链剖分也可做,不难但是写起来麻烦。这里用倍增lca来做。代码比较好写。(其他lca的写法也可以的 两点xx,yy的距离就是xx到根的距离+yy到根的距离-两倍的lca(x,y)lca(x,y)到根的距离#include <cstdio>#include <iost原创 2017-05-11 22:01:12 · 389 阅读 · 1 评论 -
【POJ2589】Snap(模拟)
题目大意: 有两个人初始有同样数量的牌组,背面朝上放置。两人同时翻开牌组最上面的一张牌,如果不相同,则将牌正面朝上放置在另一堆上。如果相同,则由随机函数判断一个人讲另一个人的正面朝上的牌组全部拿过来放到自己正面朝上的牌组的上面。如果一个人牌组翻完了,则将自己正面朝上的那堆翻转,重复操作,直到原创 2017-01-12 12:06:38 · 342 阅读 · 0 评论 -
【POJ2587】Airline Hub(经纬度求距离)
题目链接 题目大意: 给你n个点的经纬度,求一个点到其他点的距离的最大值里是最小。具体解释 需要用到经纬度求距离的公式。 当个模板好了。#include <cstdio>#include <cmath>#include <algorithm>using namespace std;int INF = 0x3f3f3f3f;const double pi =原创 2017-01-12 20:20:49 · 394 阅读 · 0 评论 -
【POJ3253】Fence Repair(优先队列+贪心)
题目链接 题目大意: 将一块长度为L的木板切割为两块,花费为L,切割后的两块木板的长度和为切割前的长度。给你N个切割后的木板的长度,问最小花费是多少。书上的一道贪心题。用huffman编码的思想贪心,感觉挺有趣的。 我们可以考虑将两块合并成一块木板,花费为合并后的木板的长度。 根据huffman思想,每次选取长度最小的两个合并,以此贪心,最后可以保证花费最少。如何选取原创 2017-02-07 14:42:48 · 457 阅读 · 0 评论 -
【POJ3252】Round Numbers(数位DP)
题目链接:http://poj.org/problem?id=3252 题目大意: 如果一个数的二进制表示中0的个数大于等于1的个数,那么这个数是符合条件的。 给你左端点和右端点,问在这区间内符合条件的数有多少。dp[pos][num0][num1] := 第一维表示从高位往低位枚举到pos的位置,第二维表示二进制中0的个数,第三维表示二进制中1的个数,结果为满足条件的原创 2016-10-26 21:39:36 · 235 阅读 · 0 评论 -
【POJ1988】Cube Stacking(并查集)
这里附带几道关系并查集题目。 poj1182(食物链):http://poj.org/problem?id=1182 poj1703(Find them, Catch them):http://poj.org/problem?id=1703 poj2492(A Bug’s Life):http://poj.org/problem?id=2492 poj1988(Cub原创 2016-10-27 22:48:58 · 403 阅读 · 0 评论 -
未完成~【POJ搜索】
poj3414 http://poj.org/problem?id=3414 题目大意: 有两个容量为A,B的罐,有三种操作(实际上有六种),问能否使得其中的一个罐装满C容量。原创 2016-10-21 20:02:39 · 270 阅读 · 0 评论 -
【POJ3279】Fliptile(开关问题)
挑战程序设计书上的代码。#pragma comment(linker, "/STACK:1024000000,1024000000")#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <algorithm>#include <cstdlib>#inclu原创 2016-10-23 17:27:20 · 295 阅读 · 0 评论 -
【POJ1426】Find The Multiple(搜索+打表)
BFS加打表水过。。#pragma comment(linker, "/STACK:1024000000,1024000000")#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <algorithm>#include <cstdlib>#include原创 2016-10-21 21:18:19 · 320 阅读 · 0 评论 -
【POJ2251】Dungeon Master(bfs)
简单的bfs求最短路径。 二维的相信都会。 这题是三维的,只是多加了两个操作。其他都一样。#pragma comment(linker, "/STACK:1024000000,1024000000")#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <al原创 2016-10-22 13:16:25 · 274 阅读 · 0 评论 -
【POJ1321】棋盘问题(简单dfs)
之前搜索的题目接触的少。。现在多练练。。 这题的搜索很经典。#pragma comment(linker, "/STACK:1024000000,1024000000")#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <algorithm>#inclu原创 2016-10-22 11:25:22 · 307 阅读 · 0 评论 -
【POJ1753】Flip Game(位压缩+bfs)
PS:对于位压缩接触不是很多,继续学习~#pragma comment(linker, "/STACK:1024000000,1024000000")#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <algorithm>#include <cstdlib原创 2016-10-21 20:15:56 · 333 阅读 · 0 评论 -
【POJ2125】Destroying The Graph(最小权覆盖点集)
Alice and Bob play the following game. First, Alice draws some directed graph with N vertices and M arcs. After that Bob tries to destroy it. In a move he may take any vertex of the graph and remove either all原创 2017-07-21 17:01:59 · 321 阅读 · 0 评论