ACM_POJ
Jaya1989
Any
展开
-
poj 2739 Sum of Consecutive Prime Numbers
<br />http://162.105.81.212/JudgeOnline/problem?id=2739<br /> <br />挺水的一个题目,<br />首先就是素数打表(0-10000),<br />然后从第一素数开始累加,<br />if(sum<n)则继续加下一个素数,<br />else if(sum==n)则找到一个, sum+下一个素数<br />else减去第j个素数(下表j也是从第一个素数开始)<br /> <br />#include<iostream>using names原创 2010-07-14 14:42:00 · 791 阅读 · 0 评论 -
poj 2413 How many Fibs?
<br />http://162.105.81.212/JudgeOnline/problem?id=2413<br /> <br />高精度题目, 用Java水过.<br />有一个常识值得说下, Fib数列的第500项约为10^105<br />所以打标Fib的前500项即可.<br /> <br />import java.io.BufferedInputStream;import java.math.BigInteger;import java.util.Scanner;public c原创 2010-07-22 21:33:00 · 1452 阅读 · 0 评论 -
poj 2251 Dungeon Master
<br />http://162.105.81.212/JudgeOnline/problem?id=2251<br /> <br />开使用深搜超时了, 然后改用广搜.<br />很快就写完了, 然后提交WA,....<br />找了半天也没找到错误, 胡乱改了点, 提交, WA...-_-<br />然后就去做2225那题(都是3维广搜), 一次就AC<br />回来我发现我的输出竟然是: Escaped in 11 mMinute(s).<br />暴汗, 我记得当时是复制的Sample Input的原创 2010-07-27 09:15:00 · 1248 阅读 · 0 评论 -
poj 2243 Knight Moves
<br />http://162.105.81.212/JudgeOnline/problem?id=2243<br /> <br /> <br />用Java解题, 解得我蛋疼-_-||<br />很多东西都忘记了....<br />写一个bfs,搞了半天,还不知道错那里了。<br />后来才发现,原来是因为每次加入队列的都是同一个对象导致的,囧<br />题目很简单,如果不知道怎么写方向数组,可参考poj19115(有图),这两题很相似。<br /> <br />import java.util.Lin原创 2010-07-24 19:24:00 · 1060 阅读 · 0 评论 -
poj 1005 I Think I Need a Houseboat
<br />http://162.105.81.212/JudgeOnline/problem?id=1005<br />double floor(double x);<br />double ceil(double x); <br />floor(x)返回的是小于或等于x的最大整数.<br />如:<br />floor(10.5) = 10 floor(-10.5) = -11<br />ceil(x)返回的是大于或等于x的最小整数.<br />如:<br />ceil(10.5) = 11原创 2010-06-06 17:14:00 · 966 阅读 · 0 评论 -
poj 2833 The Average
<br />http://162.105.81.212/JudgeOnline/problem?id=2833<br /> <br />用Java一直过不了, 提示还是RE,- -||(应该是超时了)<br />下午用C++把Java代码"翻译"了下, AC...<br /> <br />思路是: 使用1 ≤ n1, n2 ≤ 10这个条件, 维护两个数组G[10],L[10].<br />分别用来存放最大的n1个数和最小的n2个数.<br />一边读入数据一边维护这两个数组, 并且求出所有数的和sum<b原创 2010-08-01 17:25:00 · 1530 阅读 · 0 评论 -
poj 1006 Biorhythms
<br />http://162.105.81.212/JudgeOnline/problem?id=1006<br /> <br />复习下中国剩余定理:<br />一个数n, 求满足n%3=2, n%5=3, n%7=2的最小数n.<br />先从3和5, 3和7, 5和7的最下公倍数中找出被7,5,3除余1的最小数,<br />分别是15,21,70。..<br />再分别用这三个数乘以对应的余数相加:<br />15*2+21*3+70*2=233<br />最后用233/105=2...23(余数原创 2010-06-06 19:12:00 · 1499 阅读 · 0 评论 -
poj 2362 Square
<br />http://acm.pku.edu.cn/JudgeOnline/problem?id=2362<br /> <br />dfs。<br />#include<iostream>#include<algorithm>using namespace std;#define MAX 21int n;int len;int parts;int max;int sum;int a[MAX];bool used[MAX];bool pt(int a,int b原创 2010-08-25 16:42:00 · 1058 阅读 · 0 评论 -
poj 1102 LC-Display
<br />http://162.105.81.212/JudgeOnline/problem?id=1102<br />超级囧的模拟题..Orz<br /> <br />#include<iostream>using namespace std;int main(){//freopen("in.txt", "r", stdin);//freopen("out.txt", "w", stdout); char ans[10][5][5]; strcpy(ans[0][0]," -原创 2010-08-25 21:48:00 · 1092 阅读 · 0 评论 -
poj 1811 Prime Test
<br />http://162.105.81.212/JudgeOnline/problem?id=1811<br /> <br />//对于一个数(2<=0<=2^54), 如果是素数,输出"Prime", 否则输出他的最小素因子.<br />//同样的程序, 第一次提交RE, 第二次提交922ms...汗<br /> <br />import java.util.Random;import java.util.Scanner;public class Main { static int原创 2010-08-26 22:56:00 · 1485 阅读 · 0 评论 -
poj 1141 Brackets Sequence
<br />http://acm.pku.edu.cn/JudgeOnline/problem?id=1141<br />dp<br />参考沈云付的书。。。。<br />#include<iostream>#include<string>using namespace std;#define MAX 101int main(){//freopen("in.txt", "r", stdin); int dp[MAX][MAX]; //第i个字符到第j个字符需要添加的最少括号数。原创 2010-08-26 16:21:00 · 1017 阅读 · 0 评论 -
poj 1011 木棒
<br />http://162.105.81.212/JudgeOnline/problem?id=1011<br />dfs <br />跟这题几乎一样poj 2362 Square<br />#include<iostream>#include<algorithm>using namespace std;#define MAX 65int n;int len;int parts;int max;int sum;int a[MAX];bool used[MAX];原创 2010-08-27 10:29:00 · 1267 阅读 · 0 评论 -
poj 1118 Lining Up
<br />http://acm.pku.edu.cn/JudgeOnline/problem?id=1118<br />水体。<br />注意:浮点数的运算是那么的慢!!!!!!<br />#include<iostream>using namespace std;#define MAX 700struct POINT{ int x, y;}point[MAX];int main(){//freopen("in.txt", "r", stdin);//浮点运算太慢原创 2010-08-28 10:34:00 · 1156 阅读 · 0 评论 -
poj 2236 Wireless Network
<br />http://162.105.81.212/JudgeOnline/problem?id=2236<br />并查集<br />ps: WA得要死, 后来才发现原来是: 求两点间距离时用的距离的平方, 而输入的d却忘记平方了, orz...orz<br />更可恶的是, 测试样例中, 两点间的最小距离都是1, d=1, 平不平方都无所谓.....orz<br />#include<iostream>using namespace std;#define MAX 1002int N,原创 2010-08-27 17:48:00 · 1070 阅读 · 0 评论 -
poj 1964 City Game
<br />http://poj.org/problem?id=1964<br />dp<br />题目的意思就是找出一个最大的矩形, 这个矩形由F组成, 最后的答案就是max*3.<br />思路: 逐行的加入, 每次加入求能构成的最大矩形....<br />用数组height[i]表示: 当前行如果加入这第i列所能构成的矩形的最大高度.<br />数组left[i]表示: 向左延伸, 高度小于当前列的第一个列坐标<br />数组right[i]表示: 向右延伸, 高度小于当前列的第一个列坐标.<br /原创 2010-10-16 21:37:00 · 2763 阅读 · 0 评论 -
poj 1394 Railroad
<br />http://acm.poj.org/problem?id=1394<br />求尽可能迟的出发,但又最早到的火车路线<br />#include<stdio.h>#include<string.h>#define INF 1000001int C, T;struct { int time; int city;}map[1000][100];char name[100][100];int start, dist;int train[1000];int原创 2010-10-25 10:14:00 · 2143 阅读 · 0 评论 -
poj 3714 Raid
<br />http://poj.org/problem?id=3714<br />求平面中给定的2*N个点, 距离最短的两点距离(两个点必须分别属于两个集合)<br />套用了别人的求平面最短两点距离的模板, 囧<br />//model start#include<stdlib.h>#include<stdio.h>#include<string.h>#include<math.h>const int N = 200002;const double MAX = 10e100, e原创 2010-10-25 12:38:00 · 1713 阅读 · 0 评论 -
poj 1050 To the Max
<br />http://162.105.81.212/JudgeOnline/problem?id=1050<br /> <br />找出最大子矩阵的和<br />用一个数组b来存放竖列的值,(具体哪列到哪列与j,k的值有关)<br />然后累加的同时记录下最大值, 如果和还>0继续累加<br />#include<iostream>using namespace std;int a[100][100];int b[100];int main(){//freopen("in.txt原创 2010-07-22 11:44:00 · 831 阅读 · 0 评论 -
poj 1579 Function Run Fun
<br />http://162.105.81.212/JudgeOnline/problem?id=1579<br /> <br /> <br />刚开始题目最后一句话没看,<br />真写了个递归函数w(a,b,c)囧, <br />结果50 50 50那组数据就过不了.<br />于是就改用dp<br />dp转换方程就不用说了,就是题目给的(那么多与呀或呀的,别看错了,- -||)<br />时间复杂度O(n^3)n<=20<br />#include<iostream>using namesp原创 2010-07-21 16:32:00 · 1104 阅读 · 0 评论 -
poj 1680 Fork() Makes Trouble
<br />http://162.105.81.212/JudgeOnline/problem?id=1680<br /> <br />题目描述的是Linux操作系统中fork函数的功能(没看明白的可以百度)<br />只要理解了题目的意思,<br />就是一个赤裸的递归模拟,<br />哎, 可是递归程序我永远都写不好...orz..orz...orz<br /> <br /> <br />#include<iostream>using namespace std;int id, A, N, K,原创 2010-07-20 23:24:00 · 1598 阅读 · 0 评论 -
poj 3006 Dirichlet's Theorem on Arithmetic Progressions
<br />http://162.105.81.212/JudgeOnline/problem?id=3006<br /> <br />又是一个跟素数有关的题目-_-,<br />这两天贴那个素数打表模板都不知道贴几次了,囧<br /> <br />题目中最后一句话很有用: <br />FYI, it is known that the result is always less than 106 (one million) under this input condition.<br />所以先打表(1-原创 2010-07-15 13:30:00 · 722 阅读 · 0 评论 -
poj 1068 Parencodings
<br />http://162.105.81.212/JudgeOnline/problem?id=1068<br /> <br />首先根据P-sequence构造出这个字符串来,<br />然后遍历整个字符串,<br />遇到')'则往回找,直到找出所有'()'为止, (依题目的意思,数据量很小,所以再怎么暴力也不会TLE的-_-)<br /> <br />#include<iostream>using namespace std;int main(){ int t,n,i,j,tmp原创 2010-07-14 15:44:00 · 746 阅读 · 0 评论 -
poj 1426 Find The Multiple
<br />http://162.105.81.212/JudgeOnline/problem?id=1426<br /> <br /> <br />Discuss里多说用bfs+状态压缩,<br />看了半天也没看出来(就是不会,囧)<br />只好暴力枚举-_-,62MS<br /> <br />#include<stdio.h>__int64 a[1500000];int main(){ int n,t1,t2; while(scanf("%d",&n),n) { t1=原创 2010-07-16 17:26:00 · 628 阅读 · 0 评论 -
poj 2965 The Pilots Brothers' refrigerator
<br />http://162.105.81.212/JudgeOnline/problem?id=2965<br /> <br />跟poj 1753很像.<br />这两题我都是用的枚举+bfs+状态压缩,<br />在Discuss里看到别人说的一个很牛的方法, 如下:<br />开一个4X4的Bool数组,开始全为false.<br />如果输入(i,j)处有"+",将该行该列取反。<br />最后有多少true就是最少步数。输出为true的坐标就是步骤。<br />Code: 32MS<br /原创 2010-07-16 11:29:00 · 762 阅读 · 0 评论 -
poj 1753 Flip Game
<br />http://162.105.81.212/JudgeOnline/problem?id=1753<br /> <br />bfs+状态压缩<br />16个格子转换成int类型,(b->1, w->0)<br />则样例<br />bwbw <br />wwww <br />bbwb <br />bwwb<br />对应的二进制为:0(16个),1010,0000,1101,1001<br />而每一次翻转, 可视为将对应位与1进行异或运算, <br />如翻转第1个格子[坐标(0,0)],原创 2010-07-14 12:00:00 · 861 阅读 · 0 评论 -
poj 1083 Moving Tables
<br />http://162.105.81.212/JudgeOnline/problem?id=1083<br /> <br />蛋疼-_-, 被这样一个题目打败了,<br />写下这篇解题报告, 纪念我死去的那些细胞们,囧...<br />一看完题目, 想到的就是排序->贪心(之前在foj好像有做过类似的题目)<br />可能就是因为做过类似的, 想也没多想, 就稀里哗啦的开始写程序,<br />结果:排序函数写错了一次, 题目亦是没看清楚-_-, 细节错误就不说了 ....我真是快要疯了,囧囧<b原创 2010-07-14 21:02:00 · 740 阅读 · 0 评论 -
poj 1321 棋盘问题
http://162.105.81.212/JudgeOnline/problem?id=1321递归程序我总是写得不够如意..囧囧这题很像n皇后问题,#includeusing namespace std;bool row[9],col[9];char map[9][9];int ans,sum,n,k;inline bool check(int r,int i)原创 2010-05-25 08:06:00 · 949 阅读 · 0 评论 -
poj 3278 Catch That Cow
<br />http://162.105.81.212/JudgeOnline/problem?id=3278<br /> <br /> <br />先构图, 这里用一个数组表示, <br />数组的值表示从N走到这里所需的最少步数,初始为-1<br />然后bfs, 每一步只能(-1,+1,*2)<br />#include<iostream>#include<queue>using namespace std;#define MAXSIZE 100001int main(){ i原创 2010-07-14 16:46:00 · 682 阅读 · 0 评论 -
poj 1062 昂贵的聘礼
<br />http://162.105.81.212/JudgeOnline/problem?id=1062<br /> <br /> <br />一个特别要注意的就是题目里描述的"等级制度", 可以枚举<br />for(j=1; j<=n; j++) if(lev[j] >= lev[1] - m + i && lev[j] <= lev[1] + i)//枚举等级允许范围的结点 limit[j] = 1;<br />最小花费用的dijkstra算法求的, 在初始化dist[]数原创 2010-07-17 13:29:00 · 940 阅读 · 0 评论 -
poj 2503 Babelfish
<br />http://162.105.81.212/JudgeOnline/problem?id=2503<br /> <br />数据不大, 可以用STL的map水过.900MS<br />后来写了一个hash的, 效率高点200MS<br />//hash<br />#include<iostream>using namespace std;#define MAX 200000struct Dic{ char w[11], f[11];}dic[MAX/2];int ha原创 2010-07-17 22:09:00 · 1022 阅读 · 0 评论 -
poj 1840 Eqs
<br />http://162.105.81.212/JudgeOnline/problem?id=1840<br /> <br /> <br />枚举+哈希<br />开个char hash[37500001]飘逸的水过去- - <br />#include<iostream>using namespace std;#define MAX 37500001#define ADD 18750000char hash[MAX];int main(){ int i, j, k, a原创 2010-07-18 20:58:00 · 960 阅读 · 0 评论 -
poj 1067 取石子游戏
http://acm.pku.edu.cn/JudgeOnline/problem?id=1067典型的威佐夫博奕(Wythoff Game),威佐夫博奕可以参见我以前转的一个帖子: http://blog.csdn.net/SMCwwh/archive/2009/12/21/5051239.aspx#include#includeint main(){ int n,m原创 2010-05-24 17:52:00 · 1161 阅读 · 0 评论 -
poj 3748 位操作
http://acm.pku.edu.cn/JudgeOnline/problem?id=3748题目虽然简单,但从Killua牛牛那学到点东西,bitset这个类库....用了bitset后看看代码是不是很简洁....#include#includeusing namespace std;int main(){ int n,x,y; while(s原创 2010-05-24 20:27:00 · 1256 阅读 · 0 评论 -
poj 1573 Robot Motion
<br />http://acm.pku.edu.cn/JudgeOnline/problem?id=1573<br /> <br /> <br />一个简单的模拟题,<br />写这篇解题报告用于告诫英语跟我一样烂的兄弟姐妹们,<br />"whether or not the number before it is 1"意为:<br />无论前面的数字是否为1,step后面都要跟(s), 也就是无论前面的数字是什么, 都是step(s)<br />为此, 鄙人光荣的贡献了2个WA,囧<br />也怪自己原创 2010-07-17 15:45:00 · 973 阅读 · 0 评论 -
poj 2109 Power of Cryptography
http://162.105.81.212/JudgeOnline/problem?id=2109看完题目, 第一想到的是高精度.由于在status中看到别人200B不到的代码就AC了,就百度了下, 囧...#include#includeusing namespace std;int main(){ double n,p; while(scanf("%lf原创 2010-05-25 20:24:00 · 924 阅读 · 0 评论 -
poj 2418 Hardwood Species
<br />http://162.105.81.212/JudgeOnline/problem?id=2418<br /> <br />刚开始用map水过, 1407ms<br />然后就去Discuss里瞧了瞧,<br />很多人说用二叉排序树做,<br />于是我就又去种了颗二叉排序树, 结果2829ms, 囧囧<br />当是熟练下如何种树吧.<br />//二叉排序树#include<iostream>using namespace std;struct Tree{ char n原创 2010-07-20 12:18:00 · 1193 阅读 · 0 评论 -
poj 2914 Minimum Cut 无向图最小割
<br />Stoer-Wagner算法<br />附模板<br />Stoer-Wagner算法:<br />prim算法不仅仅可以求最小生成树,也可以求“最大生成树”。最小割集Stoer-Wagner算法就是典型的应用实例。<br />求解最小割集普遍采用Stoer-Wagner算法<br />1.min=MAXINT,固定一个顶点P<br />2.从点P用类似prim的s算法扩展出“最大生成树”,记录最后扩展的顶点和最后扩展的边<br />3.计算最后扩展到的顶点的切割值(即与此顶点相连的所有边权和)原创 2010-11-13 11:36:00 · 3085 阅读 · 0 评论