pku
文章平均质量分 71
laserss
laserss@qq.com
展开
-
HDU1319 & PKU3518 - Prime Cuts
#includeusing namespace std;int list[1010]={0,1,2,3};int Find(int N) //小于N的素数的个数 { int i; for(i=1;i<=1000;i++) if(N<list[i]) { i--; break; }原创 2012-07-05 21:35:53 · 740 阅读 · 1 评论 -
pku动态规划题集
1015 Jury Compromise最小差最大和1029 False coin 水题1036 Gangsters ! 不会的题。,1037 A decorative fence dp+字典序计数...1038 Bugs Integrated, Inc.1042 Gone Fishing1050 To the Ma原创 2012-09-16 12:43:56 · 1451 阅读 · 0 评论 -
hdu4268 排序贪心Alice and Bob
hdu4268multiset中upper_bound的使用//multiset//iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。//iterator upper_bound( const key_type &key ):返回一个迭代器,指向键值> key的第一个元素。 #i原创 2012-10-07 16:48:26 · 872 阅读 · 0 评论 -
pku1029-False coin
pku1029-False coin 题意:一堆硬币(N个) 中有一个假币,假币质量与其他硬币质量不同(更重或更轻),通过K次称重得到的结果来判断假币的序号。首先给出两个整数 N 和 K ,表示有N个硬币,K次称重。然后2K行每两行代表一次称重。1. =等号两边的硬币都是正常硬币2.同时处于偏重和偏轻端的硬币正常。原创 2012-09-22 21:01:16 · 1418 阅读 · 1 评论 -
hdu1036Gangsters-dp
pku1036Gangstersdp[i]=max{ dp[ j ] } + p[ i ] , t[ i ] - t[ j ] >= abs(s[ i ] - s[ j ] )#include#include#include#include#include#includeusing namespace std;int dp[原创 2012-09-23 15:07:06 · 1152 阅读 · 0 评论 -
pku1659Frogs' Neighborhood 可图定理
pku1659n个点的度从大到小排序从中出去第一个点 并抹去边 (类似拓扑排序)序列中的所有数都为0 或 出现负数#include#include#include#includeusing namespace std;struct point{ int n,num;}P[11];bool cmp(point a,point b){ return a.num>b原创 2012-11-27 16:49:47 · 768 阅读 · 0 评论 -
hdu1506 & pku2559 Largest Rectangle in a Histogram
hdu1506&pku2559 #includeint H[100005],l[100005],r[100005];main(){ __int64 max,area; int i,n; while(scanf("%d",&n),n) { for(i=1;i<=n;i++) { scanf("%d",&H[i]); l[i]=r[原创 2012-07-22 20:41:02 · 609 阅读 · 0 评论 -
poj2689Prime Distance 素数筛选
poj2689Prime Distance题目要求:在给定范围L~R中找出差值最大和最小的两组素数要在L~R筛选素数 ,直接算出1~2,147,483,647的话肯定超时但实际上,筛选1~2,147,483,647中的素数需要的因子并不多,只要找出2~sqrt(2,147,483,647)中的素数就够了,筛选法就是这么干的之后用这些素数对L~R的原创 2013-04-01 13:54:38 · 844 阅读 · 1 评论 -
POJ1661Help Jimmy _dp
pooj1661将题目模型想象成水流的下落:遇到木板后分成两股水流继续向下,问什么时候能到达地面(假设地面是最后一个木板)dp[i][0] 水流到达第i个木板左端点的最早时间 dp[i][1] 右端点//poj1661#include#include#include#includeusing namespace std;int dp[1100][2原创 2013-03-21 14:53:56 · 923 阅读 · 0 评论 -
POJ1947 树形dp 重做
poj1947噩梦。。。#include#include#include#includeusing namespace std;int N,P;vectorson[160];int vis[160],dp[160][160],Start;int dfs(int n){//printf("~%d\n",n); int sum=1,len=son[原创 2013-04-16 20:28:11 · 1122 阅读 · 1 评论 -
poj1741Tree 树的分治 树形dp 男人八题....
poj1741Tree没有思路的话就看看漆子超的论文//重心 距离 排序 统计 //http://www.2cto.com/kf/201208/149839.html#comment_iframe#include#include#include#include#include#includeusing namespace std;#define MAX原创 2013-04-26 20:03:20 · 1674 阅读 · 0 评论 -
pkupoj1037A decorative fence-动态规划+字典序计数
pku1037黑书257页例题有木有啊 别人几句话就说完了有木有啊完全看不懂有木有啊没办法只好上网搜题解啊题解也看了半天啊//我无奈了,,努力了很久还是没写出来。不过总算理解了。。。这是努力的结果~#include#includeusing namespace std;__int64 W[21][21],M[21][21],c;原创 2012-09-27 21:24:11 · 1341 阅读 · 0 评论 -
pku1015Jury Compromise-最小差最大和dp
pku1015Jury Compromisen组数字,每组两个数字 d 和 p,要求从中选出m组,使(m个d的和)与(m个p的和)之差最大,如果有种情况的差值相同,取所有d,p总和最大的那种情况。参考#include#include#includeusing namespace std;int dp[21][801],path[21][80原创 2012-09-17 21:55:04 · 1787 阅读 · 0 评论 -
PKU3518 Prime Gap
prime gap仅以素数开头和结束的序列 例如:13 14 15 16 17 (长度为17-13=4) 给定一个整数k ,输出包含 k 的prime gap的长度。 如果k是素数 ,输出0 #include#includeusing namespace std;bool Isprime(int n) //素原创 2012-07-06 11:11:51 · 1329 阅读 · 0 评论 -
pku计算几何题集
计算几何题的特点与做题要领:1.大部分不会很难,少部分题目思路很巧妙2.做计算几何题目,模板很重要,模板必须高度可靠。3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面大部分是模板。如果代码一片混乱,那么会严重影响做题正确率。4.注意精度控制。5.能用整数的地方尽量用整数,要想到扩大数据的方法(扩大一倍,或扩大sqrt2)。因为整数不用考虑浮点误差,而且运算比浮点转载 2012-07-09 16:49:11 · 666 阅读 · 0 评论 -
pku 3259 Wormholes (Bellman ford判断负权边)
题目链接: pku3259 Wormholes 之前在数据结构书上看了dijkstra 和floyed(从来没有自己写过) 但是有负权边的一直不会 所以专门找了题目看看怎么写 感觉上bellmanford 跟 dijkstra 处理问题的关键步骤差不多都是不断的松弛 但是bellmanford顺序不同dijkstra是对每个点进行松弛原创 2012-07-09 11:09:33 · 771 阅读 · 0 评论 -
hdu1532 & pku1273 Drainage Ditches 网络流(最大流EK算法)
hdu1532 &pku1273 Drainage Ditches(最大流EK算法) 本题的算法流程1.初始化pre2.BFS求增广路径P 不存在:break ,return flow;3.求P中最小值aug4.修改P中残留容量,流flow++++ 需要注意:1°BFS找增广路径2°前缀数组pre的遍历 //pku原创 2012-07-10 09:23:34 · 837 阅读 · 0 评论 -
poj1125Stockbroker Grapevine - floyd最短路
poj1125Stockbroker Grapevine题目生词比较多...翻译如下:http://poj.org/showmessage?message_id=162255首先,题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),然后接下来N行描述第i(1每行开头数字M为该行对应的经纪人有多少个经纪人朋友(该节点的出度,可以为0),然后原创 2012-07-21 10:10:36 · 790 阅读 · 0 评论 -
pku1942-Paths on a Grid
本质上是组合数公式 一开始是用搜索模拟 太慢了pku1942Runtime Error#include#includeusing namespace std;__int64 dfs(__int64 x,__int64 y){ if(x==1||y==1) return 1; return dfs(x-1,y)+dfs(x,y-1);}int ma原创 2012-08-13 11:59:29 · 648 阅读 · 0 评论 -
hdu1342&poj2245Lotto - dfs
hud1342dfs第二题 不怎么熟练看了别人的代码//hdu 1342 poj2245#include#includeusing namespace std;int ans[6],S[20];void dfs(int k,int next,int n){ int i,j; if(n==7) { for(i=1;i<=6;i++)原创 2012-08-12 18:30:45 · 790 阅读 · 0 评论 -
pku3041-Asteroids 最小点覆盖
pku3041-Asteroids把行列看成点再用匈牙利算法过#include#include#includeusing namespace std;bool mp[500][500],visit[500];int link[500];int m,n;bool find(int x){ int i; for(i=1;i<=n;i++) {原创 2012-08-13 13:25:19 · 913 阅读 · 0 评论 -
PKU2488 A Knight`s Journey--DFS
PKU2488莫名其妙的过了……1.棋盘的布局2.输出顺序3.dir数组表示的方向#include#include#includeusing namespace std;int m,n,flag,dir[8][2]={{-1,-2},{1,-2},{-2,-1},{2,-1},{-2,1},{2,1},{-1,2},{1,2}};原创 2012-08-14 13:20:08 · 949 阅读 · 0 评论 -
PKU2262 Goldbach's Conjecture 数论-素数
PKU2262 Goldbach's Conjecture 用筛选法生成素数表prime[MAX]。。。 之前一直把最简单的试除法当做筛选法来用,还认为效率很高, 然后这题就一直一直time limit exceed 1、试除法 用 n 除以 2-sqrt(n),有一个能除尽就不是素数,否则是素数。 时间复杂度:O(sqrt(n)) 2、素数原创 2012-07-16 14:10:31 · 1373 阅读 · 0 评论 -
pku3083Children of the Candy Corn-模拟+bfs
pku3083Children of the Candy Corn模拟的部分写了一下午写bfs的时候还不知道什么是bfs……然后去写bfs模板题(记录在前两篇博客里)然后贴bfs完成后就一直Runtime Error。。。因为开的数组是 mp[40][40] ,然后数据里正好有 40*40 就杯具的Runtime Error了十多次#includ原创 2012-08-16 15:50:45 · 649 阅读 · 2 评论 -
poj3107 树的重心 非stl实现
poj3107求树的重心,全部输出(poj1655 输出序号最小的节点,数据规模小一点,使用stl)#include#include#include#includeusing namespace std;int N;int v[50010*2],next[50010*2],head[50010],E;int vis[50010];int num[50010],dp[5原创 2013-05-06 20:38:11 · 1722 阅读 · 0 评论