摘要: 题目链接数据小,DFS完,打表。1Y。直接搞会超时,预处理出来会AC。造表代码 1 #include <stdio.h> 2 #include <string.h> 3 #define N 30 4 int k[12]; 5 int p[N][N],r[N],c[N],sr[N],sc[N]; 6 int z,n; 7 void dfs(int x,int y,int step) 8 { 9 int t,i,j;10 if(step == n)11 {12 z ++;13 return ;14 }15 if(x >= st... 阅读全文
posted @ 2012-07-11 21:21 Naix_x 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 题目链接又是细节啊,结束条件判错了,导致没有全部搜完就结束了,这个错误,检查了好几遍都没发现,终于找AC代码对拍数据,发现了。。。 1 #include <stdio.h> 2 #include <string.h> 3 int p[101][101],b,w,n,bnu,wnu,bb,ww,sum,z; 4 int x[4] = {0,0,-1,1}; 5 int y[4] = {1,-1,0,0}; 6 void dfs(int r,int c) 7 { 8 sum ++; 9 int i;10 for(i = 0;i <= 3;i ++)11 {12 ... 阅读全文
posted @ 2012-07-11 19:24 Naix_x 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 题目链接有点找规律的意思,先把所有的情况都预处理出来,m<= 10000 所以说最多只有8个数字改变。#include <stdio.h>#include <string.h>#define N 10000int p[N+1][9],o[9],num;void dfs(int step){ int i; if(num > N) return ; if(step > 8) { num ++; return; } for(i = 1; i <= 8; i ++) { if(!o[i]) ... 阅读全文
posted @ 2012-07-11 18:14 Naix_x 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 题目链接判断条件没搞好 2Y,全部是0的时候查出错。#include <stdio.h>#include <stdlib.h>#include <string.h>char p[11][11];int key[11][11];int r[11][11],c[11][11],o[11][11],z;int judge(int i,int j){ int a; if(i <= 2) { if(j <= 2) a = 0; else if(j <= 5) a = 1; else if(j <= 8... 阅读全文
posted @ 2012-07-11 18:11 Naix_x 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目链接复杂啊,这到底是模拟题还是BFS啊。。。。数组开小RE一次,2Y。。。调试了好久啊。 1 #include <stdio.h> 2 #include <string.h> 3 #define N 1000001 4 char p[101][101]; 5 int o[101][101],key[101][101];// key标记,o标记 6 int r[100001],c[100001],ti[100001];//ti记录时间 7 int past[100001],load[100001];//记录路径 8 int main() 9 { 10 int n,m. 阅读全文
posted @ 2012-07-09 13:35 Naix_x 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 题目链接5Y。。。。居然是因为一个剪枝减导致第一次WA,然后又悲剧了3次,最后感觉自己的程序没啥问题啊,自己乱查 数据,自己想出了一组没有过。。。。3 4 11S..D........终于发现某 一个小的剪枝错了。。。。。这个题杭电文档上搜索的例题,所以剪枝也 没有怀疑,自己实现的 时候搞错了。。。450ms+。。。慢死。。。 1 #include <stdio.h> 2 #include <string.h> 3 char p[10][10]; 4 int o[10][10],n,m,t,endr,endc,z; 5 int a[4] = {0,0,1,-1}; 6 阅读全文
posted @ 2012-07-09 11:02 Naix_x 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 题目链接这个题1Y,还是想了几个剪枝63ms,如果直接去暴力的10*10的有点大,因为这相当于无向图,只须枚举一半就可以,也就是45个点,其实还是有点悬的,再加一个剪枝,中间加入判断把不符合情况的,直接淘汰。实习回来的第一个题,DFS调试了半天。。。 1 #include <stdio.h> 2 #include <string.h> 3 int p[101][101],o1[11],o2[11],z,n; 4 void dfs(int x,int y) 5 { 6 int r,c,i,j; 7 if(z) return ; 8 if(o2[x] > o1[x]| 阅读全文
posted @ 2012-07-08 15:58 Naix_x 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 long long p[64]; 5 int main() 6 { 7 long long i,len,sum; 8 char num[100]; 9 p[0] = 1;10 for(i = 1;i <= 63;i ++)11 p[i] = 2*p[i-1];12 for(i = 1;i <= 63;i ++)13 p[i]--;14 while(scanf("%s",num)... 阅读全文
posted @ 2012-07-04 10:06 Naix_x 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 题目链接网速真不好啊,题目挺简单的,变量名打错WA了一次。 1 #include <stdio.h> 2 #include <string.h> 3 char p[101][101]; 4 int a[5] = {0,0,1,-1}; 5 int b[5] = {1,-1,0,0}; 6 int num[101],len; 7 void dfs(int x,int y) 8 { 9 int i;10 if(p[x][y] == 'X'||p[x][y] == '#')11 return ;12 else13 p[x][y] = ' 阅读全文
posted @ 2012-07-04 08:48 Naix_x 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 题目链接和以前做的一个排名(至今未作出)还相似。。。。上班结束回宿舍。。。 1 #include <stdio.h> 2 #include <string.h> 3 #define N 10000000 4 int p[101][101],o[101]; 5 int main() 6 { 7 int i,j,k,n,m,sv,ev,z; 8 while(scanf("%d%d",&n,&m)!=EOF) 9 {10 memset(o,0,sizeof(o));11 if(n == 0&&m == 0)break;12 阅读全文
posted @ 2012-07-03 19:48 Naix_x 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题目链接好假啊,1Y,我本以为会超时的,看来数据小啊。。。。在经过各种压线之后,目测这个学期不会挂科,淡定,实习完,继续刷题!!! 1 #include <stdio.h> 2 #include <string.h> 3 int p[201][201],o[201],n,z; 4 void dfs(int x,int y) 5 { 6 int i; 7 if(z) return ; 8 o[x] = y;; 9 for(i = 0;i <= n;i ++)10 {11 if(p[x][i] )12 {13 ... 阅读全文
posted @ 2012-07-03 11:07 Naix_x 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 题目链接在实训的间隙刷个题。。。裸地杰斯特拉。 1 #include <stdio.h> 2 #include <string.h> 3 #define N 10000000 4 int p[1001][1001]; 5 int main() 6 { 7 int i,j,k,t,s,d,sv,ev,w,min,num,min2,max; 8 int a[1001],o[1001],key[1001]; 9 int low[1001];10 while(scanf("%d%d%d",&t,&s,&d)!=EOF)11 {12 m 阅读全文
posted @ 2012-07-02 19:05 Naix_x 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题目链接这个题,错了10+,不过还是挺值得的,发现了两个我的Floyd模版的两个问题,一个是初始化的数必须绝对的大,然后就是在判断句的时候if(p[i][j] > p[i][k] + p[k][j] && p[i][k] != N && p[k][j] != N) 以前不注意不写后边的两个&&,做这个题,发现在数据很大的时候会出错。。。血的教训啊。。。以后写Floyd一定要注意。。。。和AC代码 一句一句的比对啊。。。。 1 #include <stdio.h> 2 #include <string.h> 3 #in 阅读全文
posted @ 2012-06-30 19:58 Naix_x 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目链接自己英语阅读能力下降了,还是题目描述的不清楚啊,太郁闷了,多组,用字符串,没了。。 1 #include <stdio.h> 2 #include <string.h> 3 char s[10010]={'\0'}; 4 int n,len; 5 int main() 6 { 7 while(scanf("%d\n",&n)!=EOF) 8 { 9 while(n--)10 {11 scanf("%s",s);12 len = strlen(s);13 if(strcmp("1... 阅读全文
posted @ 2012-06-30 16:53 Naix_x 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 题目链接赤裸裸的并查集,搞不懂为什么POJ计划里,会用分治做。。 1 #include <stdio.h> 2 #include <string.h> 3 #define N 50001 4 int o[N]; 5 int find(int x) 6 { 7 int r,t; 8 r = x; 9 while(x != o[x])10 x = o[x];11 while(r != x)12 {13 t = o[r];14 o[r] = x;15 r = t;16 }17 return... 阅读全文
posted @ 2012-06-30 15:54 Naix_x 阅读(151) 评论(0) 推荐(0) 编辑