
dfs || bfs
文章平均质量分 58
LeeBooL
这个作者很懒,什么都没留下…
展开
-
HLG1433泉水
#include #include #include #include #define maxn 1000 + 10using namespace std;int final;int vis[maxn][maxn];int map[maxn][maxn];int s[maxn][maxn];int m,n;int move原创 2014-04-14 18:50:51 · 646 阅读 · 0 评论 -
HLG Catch The Cow
Catch That CowTime Limit: 2000 MSMemory Limit: 65536 KTotal Submit: 692(178 users)Total Accepted: 248(161 users)Rating: Special Judge: NoDescription原创 2014-04-12 21:43:51 · 354 阅读 · 0 评论 -
POJ1088
记忆化搜索+DP一直X到最低点的最长路径,切Y>X,则Y到最低点的最短路径就是Y->X+X到最低点的距离#include #include #include using namespace std;#define maxn 200 + 5int map[maxn][maxn];int dp[maxn][maxn];int原创 2014-05-21 19:52:57 · 394 阅读 · 0 评论 -
POJ3278
#include #include #include #include using namespace std;#define max 100000bool visited[max];int deep[max];int N,K;int bfs(){ int count = 0; queue q; q.push(N);原创 2014-07-21 06:37:59 · 331 阅读 · 0 评论 -
POJ1426
用队列会TLE#include #include #include using namespace std;int n;long long int ans;long long int num[10000000];long long int bfs(){ int top = 0, tail = 0;原创 2014-07-21 07:15:20 · 351 阅读 · 0 评论 -
POJ2251
灰常开心,1A的题,虽然很水,但是还是很开心啦,#include #include #include #include using namespace std;int move[6][3] = {{0,0,1}, {0,0,-1}, {0,1,0}, {0,-1,0}, {1,0,0}, {-1,0,0}};bool vis[50][50][50];原创 2014-07-20 20:34:31 · 335 阅读 · 0 评论 -
POJ3041
#include #include #include #include using namespace std;char gra[12][12];int nowx, nowy;int loop,count;int r, c, pos;bool flag = false;bool check(int x, int y){原创 2014-07-23 21:48:05 · 310 阅读 · 0 评论 -
Dividing Stones
#include #include #include #include using namespace std;int cnt;int n,p;bool flag1 =false;setvec;//void prime()//{// cnt = 0;// Prime[cnt++] = 1;// for( int原创 2014-08-04 22:38:26 · 361 阅读 · 0 评论 -
POJ1129
因为一个“。”WA了好几遍我能不能再认真一点啊原创 2014-08-09 07:16:10 · 429 阅读 · 0 评论 -
uva 657 The die is cast(双重搜索)
#include #include #include #include #include using namespace std;char dif[66][66];int clo, row;int move[4][2] = { {0, 1}, { 0, -1}, { 1, 0}, { -1, 0} };int num[10000];int c原创 2014-09-25 20:50:50 · 322 阅读 · 0 评论 -
Uva10557 XYZZY
题意,进出房间需要消耗#include #include #include #include using namespace std;bool map[105][105];int val[105];int aft[105];bool vis[105];int que[105];int n;//看经过回路内的点否原创 2014-10-03 11:51:07 · 487 阅读 · 0 评论 -
uva 301
#include #include #include #include using namespace std;int stanum, staac, maxn, num;struct edge{ int u, v; int val;} e[33];int a[10];void dfs(int cur ,int pos)原创 2014-10-15 23:33:10 · 300 阅读 · 0 评论 -
uva 10344
贡献了 #include #include #include #include #include using namespace std;bool flag = false;int num[5];void dfs( int n, int res){ if(flag || n > 4) return ;原创 2014-10-16 00:06:36 · 311 阅读 · 0 评论 -
HDU356 Eight II(康拓展开+预处理)
双向BFS会TLE, T_T , 但是离线就不会了虽然TLE了, 还是贴出来留个纪念吧#include #include #include #include #include #include using namespace std;const int MAXN=1000000;//最多是9!/2struct node{ bool ty原创 2015-02-09 00:28:07 · 474 阅读 · 0 评论 -
HDU Eight( 康拓展开)
#include#include#include#include#includeusing namespace std;const int MAXN=1000000;//最多是9!/2int fac[]={1,1,2,6,24,120,720,5040,40320,362880};//康拖展开判重// 0!1!2!3! 4! 5! 6! 7!原创 2015-02-08 00:42:28 · 414 阅读 · 0 评论 -
HLG移动
#include #include #include #include using namespace std;int vis[400][400];struct point{ int x0; int y0;};int move[8][2] = {{-2,1}, {2,1}, {-1,2}, {1,2}, {-2,-1}原创 2014-04-12 21:42:17 · 506 阅读 · 0 评论 -
ZOJ2750
#include #include #include #include #define INF 1000 + 10#define maxn 100000using namespace std;int n;struct node{ char first[5]; char last[5]; int tim原创 2014-04-27 20:20:35 · 350 阅读 · 0 评论 -
HDU1072
又 #include #include #include #include #define maxn 50using namespace std;struct point{ int x,y; int time; int step;}now,temp;char map[maxn][maxn]原创 2014-05-01 16:55:22 · 386 阅读 · 0 评论 -
HDU1312
#include #include #include #include #define maxn 25using namespace std;char map[maxn][maxn];int movex[4] = {0, 0, -1, 1};int movey[4] = {1, -1, 0 ,0};int w,h,ans,sx,sy;原创 2014-05-02 22:09:02 · 400 阅读 · 0 评论 -
HDU1253胜利大逃亡
#include#include#include#includeusing namespace std;int maps[55][55][55];int a,b,c,t;struct node{ int x,y,z; int steps;}start;int dx[]={0,0,0,0,-1,1};int dy[]={0,0,原创 2014-05-01 17:19:35 · 484 阅读 · 0 评论 -
POJ2244
#include #include #include #include#include #define INF 100000000#define maxn 50using namespace std;double sta[500][500]; map ma;int main(){ int n,m,max; doub原创 2014-04-19 11:50:50 · 601 阅读 · 0 评论 -
SGU362
#include #include #include #include using namespace std;int n,m;bool vis[15][15];int sx,sy;int move[4][2] = {{1, 0}, {0,- 1}, {- 1, 0}, {0, 1}};char str[4]={'D', 'L', 'U', 'R原创 2014-05-05 18:32:26 · 446 阅读 · 0 评论 -
HDU1372
#include#include#include#includeusing namespace std;int map[10][10];int fx,fy,lx,ly;char a[3],b[3];struct node{ int x,y,num;};int d[8][2]={-2,1, -1,2, 1,2, 2,1, 2,-1, 1,-2,原创 2014-05-05 18:33:10 · 380 阅读 · 0 评论 -
黑白图像
输入n表示有一个#include #include #include #define maxn 10000 + 10using namespace std;int mat[maxn][maxn];int vis[maxn][maxn];void dfs(int x, int y){ if(!mat[x][y] |原创 2014-04-08 17:53:12 · 427 阅读 · 0 评论 -
POJ2245
#includeusing namespace std;const int Max = 14; int n, num[Max], re[6]; // re[]存储要输入的数。 void dfs(int dep, int p){ // dep表示存储在re[]中数的个数,p表示轮到处理num[]的第p个数。 if(p > n || dep +原创 2014-04-25 20:04:35 · 417 阅读 · 0 评论 -
POJ1979
#include #include #include #include #define maxn 40using namespace std;char map[maxn][maxn];bool vis[maxn][maxn];int n,m,ans;void bfs( int x, int y){ if(v原创 2014-04-25 19:21:58 · 305 阅读 · 0 评论 -
HDU1241
#include #include #include #define maxn 200using namespace std;char map[maxn][maxn];bool vis[maxn][maxn];int n,m;void dfs(int x, int y){ if(vis[x][y] || map[x原创 2014-04-25 00:07:56 · 360 阅读 · 0 评论 -
HDU1010
又是因为不认真#include #include #include #include using namespace std;char map[14][14];bool vis[14][14];bool falg = false;int N,M,T,stx,sty,endx,endy;int move[4][2] = {{0,原创 2014-04-24 19:09:55 · 351 阅读 · 0 评论 -
HDU1240
三维BFS#include #include #include #include using namespace std;struct node{ int x,y,z; int step;} st,end;int n,res;char maps[15][15][15];int move[原创 2014-04-24 19:10:49 · 451 阅读 · 0 评论 -
Fire Net
#include #include #include using namespace std;char str[5][5];int n, ans;bool check( int x, int y){ for( int i = x - 1; i >= 0; i--) { if(str[i][y] == 'O') return false;原创 2015-03-21 23:50:03 · 280 阅读 · 0 评论