POJ
文章平均质量分 70
E_Windrunner
这个作者很懒,什么都没留下…
展开
-
POJ 2570 Fiber Network
位运算,好题。。。#include#include#includeint map[210][210];int main(){ int n,x,y,i,j,k,flag; char s[30]; while(scanf("%d",&n)&&n) { memset(map,0,sizeof(map)); while(原创 2012-07-17 17:52:40 · 259 阅读 · 0 评论 -
POJ 1190 生日蛋糕
剪枝……#include#include#include#includeconst int INF=100000000;int n,m,cnt[50],flag,anss,ans;void dfs(int c,int l,int lastr,int lasth){ int r,h,tmp,minr,minh,i; if(l==0) {原创 2012-07-19 00:36:29 · 313 阅读 · 0 评论 -
POJ 2312 Battle City
优先队列的简单应用#include#include#include#includeusing namespace std;struct type{ int x,y,step;};char s[350][350];int m,n,dx[4]={-1,1,0,0},dy[4]={0,0,-1,1},ans,vis[350][350];bool operator <原创 2012-07-18 21:34:15 · 239 阅读 · 0 评论 -
POJ 1016 Numbers That Count
#include#include#include#include#include#include#include#include#includeusing namespace std;int main(){ char s2[100],s[20][100]; int i,j,cnt[100],x,y,loop; bool flag1; while(scanf("%原创 2012-08-25 14:01:25 · 289 阅读 · 0 评论 -
POJ 1017 Packets
你妹的模拟题。。。wa了n次#include#include#include#include#include#include#includeusing namespace std;int main(){#ifndef ONLINE_JUDGE freopen("a.in","r",stdin);#endif int a1,a2,a3,a4,a5,a6;原创 2012-10-09 14:05:04 · 219 阅读 · 0 评论 -
POJ 1041 John's trip
欧拉回路,基础题,但我做得那叫一个乱。。这道题只要把边和顶点的概念颠倒着想就可以了#include #include #include #include #include #include using namespace std;const int maxN=2000;int maX,degree[maxN],st[maxN],top,map[maxN][maxN];原创 2012-11-10 14:00:26 · 481 阅读 · 0 评论 -
POJ 1144 Network
假若在删去顶点v以及和v相关联的各边之后,将图的一个连通分量分割成两个或两个以上的连通分量,则称顶点v为该图的一个割点。生成树为从根结点出发深度优先搜索遍历图,未遍历到的边为虚边。割点判定:(1)若生成树的根有两棵或两棵以上子树,则此根结点必为割点(2)若生成树中某个非叶子结点v,其某棵子树的根和子树中的其他结点均没有指向v的祖先的回边,则v为割点具体请看数据结构课本。#i原创 2012-11-11 20:33:33 · 336 阅读 · 0 评论 -
POJ 1064 Cable master
二分答案#include #include #include #include #include #include using namespace std;int a[10010];int main(){#ifndef ONLINE_JUDGE freopen("a.in","r",stdin); freopen("a.out","w原创 2012-11-11 10:02:37 · 491 阅读 · 1 评论 -
POJ 1087 A Plug for UNIX
二分图匹配,主要在于建图,貌似建得有点丑。。把能插座X上能插入的插头(包括通过转化器的)通过dfs全找出来,图就建好了,我是用map将字符串映射成数组下标的。二分图一边是插座,一边是插头。#include #include #include #include #include #include #include using namespace std;const i原创 2012-11-11 12:45:58 · 310 阅读 · 0 评论 -
POJ 1166 The Clocks
代码略丑。。已经懒得去改了,华丽丽的563ms。。。bfs暴搜,记录一下状态就行了。#include #include #include #include #define SZ(x) ((int)(x).size())#define FOR(it,c) for ( __typeof((c).begin()) it=(c).begin(); it!=(c).end(); it++原创 2012-11-16 23:01:24 · 295 阅读 · 0 评论 -
POJ 2386 Lake Counting
题略水- -!#include#include#includechar s[110][110];bool vis[110][110];int n,m;void dfs(int x,int y){ if(x=0&&y=0&&s[x][y]=='W'&&!vis[x][y]) { vis[x][y]=true; dfs(x+1,y)原创 2012-07-18 21:58:30 · 227 阅读 · 0 评论 -
POJ 1023 The Fun Number System
#include#include#include#includeusing namespace std;long long n;int main(){#ifndef ONLINE_JUDGE freopen("a.in","r",stdin);#endif int t,a[100],k; cin>>t; while(t--){原创 2012-10-09 00:00:16 · 374 阅读 · 0 评论 -
POJ 1971 Parallelogram Counting
4485ms,擦边球?。。。。下面还有一份优化版代码。。563ms#include#include#include#include#includeconst long long maxsize = 0x1fffff;const int maxn = 1010;using namespace std;struct Point{ int x,y;}p[maxn]原创 2012-08-26 22:23:58 · 353 阅读 · 0 评论 -
POJ 1837 Balance
动态规划#include#include#includeint dp[30][15010];int main(){ int c,g,pos[30],w[30],ans,i,j,k,tmp; // freopen("test.txt", "r", stdin); while(scanf("%d%d",&c,&g)!=EOF) { ans=0原创 2012-07-18 10:43:56 · 248 阅读 · 0 评论 -
POJ 1014 Dividing
多重背包#include#include#includebool dp[60010];int main(){ int num[10],i,sum,flag,tmp,j,k,cnt=0; // freopen("test.txt", "r", stdin); while(1) { memset(dp,0,sizeof(dp));原创 2012-07-17 20:18:43 · 231 阅读 · 0 评论 -
POJ 1840 Eqs
难道这个也算哈希??- -#include#include#include#includeshort cnt[25000010];int main(){ int a[10],i,j,k,ans,tmp; while(scanf("%d%d%d%d%d",&a[1],&a[2],&a[3],&a[4],&a[5])!=EOF) { memset原创 2012-07-22 16:13:51 · 326 阅读 · 0 评论 -
POJ 2478 Farey Sequence
欧拉函数- -!#include#include#include#include#include#define N 1000010#define maxn 1000000using namespace std;long long phi[N],ans[N];int main(){ int i,j,n; for(i=1;i<=maxn;转载 2012-08-11 00:41:52 · 350 阅读 · 0 评论 -
POJ 1228 Grandpa's Estate
第一次做凸包,2Y,^ ^#include#include#include#include#includeusing namespace std;int n,pos;struct point{ int x,y;}p[1010];const int inf=0x7fffffff;int mult(point a,point b,point c){ if原创 2012-08-12 00:38:56 · 630 阅读 · 0 评论 -
poj 2666 Back to Mother Ship
积分题,利用线速度算出角速度,对角速度进行积分,注意求积分是要满足初始条件:角度a=0#include#include#include#include#include#includeusing namespace std;const double pi=acos(-1.0);int main(){ int a,u,d; while(cin>>u>>a原创 2012-08-13 13:22:35 · 622 阅读 · 0 评论 -
POJ 1236 Network of Schools
调了3个小时,我勒个去。。下面是转载自http://www.cppblog.com/kuangbin/archive/2011/08/25/154304.html?opt=admin的内容强连通分量缩点求入度为0的个数和出度为0的分量个数题目大意:N(2各学校之间有单向的网络,每个学校得到一套软件后,可以通过单向网络向周边的学校传输,问题1:初始至少需要向多少个学校发放软件,使得网原创 2012-09-03 22:42:12 · 354 阅读 · 0 评论 -
POJ 2186 Popular Cows
邻接表建图,强连通分量缩为有向无环图(DAG)中的一点,若DAG中出度为0的个数有1个以上,则解不存在,若出度为0的点有1个,则解为该点强连通分量中包含的点的个数#include#include#include#include#include#include#include#include#includeusing namespace std;const int max原创 2012-09-04 01:44:04 · 246 阅读 · 0 评论 -
POJ 1015 Jury Compromise
这个,应该算dp吧。。。#include#include#include#include#include#include#include#include#includeusing namespace std;const int inf=10000000;int ans[30][30][1000];int main(){ int n,原创 2012-08-26 14:29:39 · 288 阅读 · 0 评论 -
POJ 1149 PIGS
最大流。关键在于建图。注意:每次打开猪笼,重新分配猪的数目后,所有已打开的猪笼要重新关闭。把每位顾客当成一个结点,若笼子k曾经被之前某个顾客a打开过,当前顾客b又能打开笼子k,则容量cap[a][b]=inf,若当前顾客是第一个打开笼子k的人,则cap[0][a]=pigNum[k],其中以0为源点,n+1为汇点,易知每个顾客到汇点的边的容量为顾客想要购买猪的数目。至此,构图完成。#inclu原创 2012-11-18 12:52:20 · 246 阅读 · 0 评论