• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






goodniao_1

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理
上一页 1 ··· 10 11 12 13 14 15 下一页

2014年3月1日

九度OJ 1548 map的用法
摘要: 题目来源:http://ac.jobdu.com/problem.php?pid=1548题目描述:给定平面上的n个点,任意做一条直线,求至多能有几个点恰好落在直线上。输入:包含多组测试数据,每组测试数据由一个整数n(0 2 #include 3 #include 4 #include 5 #include 6 #include 7 #define N 105 8 using namespace std; 9 double Point[N][2];10 int n;11 //定义分数结构体12 struct Node13 {14 double zi;15 double mu;1... 阅读全文
posted @ 2014-03-01 15:23 goodniao_1 阅读(238) 评论(1) 推荐(0)
 

2014年2月28日

zoj 2110 dfs+步长
摘要: dfs搜索。搜索位置=D,而且步长=T, return, 可以逃出,输出“YES”。否则,不能逃出,输出“NO”。 1 #include 2 #include 3 #include 4 #include 5 #define N 9 6 using namespace std; 7 char map[N][N]; 8 int flag[N][N]; 9 int m,n,t;10 int Si,Sj;11 int Di,Dj;12 bool escape;13 int dir[4][2]={{-1,0},{0,1},{1,0},{0,-1}} ; // 方向是上右下左的顺时针14 void df. 阅读全文
posted @ 2014-02-28 19:06 goodniao_1 阅读(156) 评论(0) 推荐(0)
 
zoj 2412 dfs 求连通分量的个数
摘要: 题目来源:http://acm.zju.edu.cn/onlinejudge/showRuns.do?contestId=1求连通分量的个数:搜索时从第一个字符(对应一个正方形)开始,每搜索到一个正方形,对该位置的四个可能方向进行下一步搜索,下一步搜索需要满足的条件是 当前这个正方形有某个方向的搜索方向且下一个正方形也有这个方向的接受(连接)方向,故可进行一步搜索。例如 当前的可走的某个方向为“上”,则下一个正方形的连接方向应该为“下”,同理。上 --下,右-- 左, 下--上, 左---右。 往前走一步,要将当前正方形设置为已访问,表示当前搜索过程不能回到经过的正方形。 一旦前进不了,要回退 阅读全文
posted @ 2014-02-28 16:04 goodniao_1 阅读(418) 评论(0) 推荐(0)
 

2014年2月27日

dfs hdu 1241 寻找连通分量的个数
摘要: 题目大意:寻找连通分量的个数。完全dfs模板,注意是八个方向的搜索。代码如下:#include#include#include#include#define N 105using namespace std;char grid[N][N];int m,n;int direct[8][2]={{-1,-1},{-1,0},{-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1}};void DFS(int x,int y){ int xx,yy,i; grid[x][y]='*'; for(i=0;i=m||yy=n) continue; if... 阅读全文
posted @ 2014-02-27 18:03 goodniao_1 阅读(214) 评论(0) 推荐(0)
 
hdu kmp 2594
摘要: 题目求P的前缀与S2的后缀相同的最长字符串,那么把P和S2连接起来,然后求next[n+m] 。注意两种数据:abcabcabcabcabc6abcabcabc3即需要讨论 next[n+m]>len(P) next=next[next[n + m]] 和 next[n+m]>len(S2) next=next[next[n + m]] 。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #define N 50005 6 using namespace std; 7 char P[N*2]; 8 char S2[N]; 9 i 阅读全文
posted @ 2014-02-27 16:13 goodniao_1 阅读(135) 评论(0) 推荐(0)
 
hdu 1358 kmp 求前缀有几个循环
摘要: [1,2...,m] 模板的前缀Pi 的循环节为 clc = i-next[i] i % clc == 0 && i != clc 则表示前缀中有 k = i / clc 个循环完全是参考代码模板:代码如下:#include#include#include#include#define N 1000... 阅读全文
posted @ 2014-02-27 14:55 goodniao_1 阅读(179) 评论(2) 推荐(0)
 
hdu 3746 kmp求循环节 下标从1开始
摘要: 长度为m[1,2...m]的模式的循环节为 m-next[m] ,aaa 循环节clc为1 (clc=m-next[m]= 3-2 =1) 此时 m%clc == 0 表示有3个完整的循环节ababa 循环节为2 (clc = 5-3=2) 此时 m%clc = 5%2 =1 表示有两个循环节 还余一个数 ,需添加的字符数 为 len - m%clcabaed 循环节为 5 (clc = 5-0=5) 此时, clc = m 表示只有一个完整的循环节 ,如果至少要两个循环节的话 ,需添加的字符数 为 len下表从1 开始的代码如下:#include#inclu... 阅读全文
posted @ 2014-02-27 13:34 goodniao_1 阅读(202) 评论(0) 推荐(0)
 
kmp hdu 3336 下标从1开始
摘要: kmp 模板 数组下标从1开始 P[1,2, . . . m] T[1,2 ,3 ... n]void Prefix_Func() { int i,k; k=0; next[1]=0; for(i=2;i0 && P[k+1]!= P[i]) k=next[k]; if(P[k+1] == P[i]) k++; next[i]=k; } }数组下标从0开始void Prefix_Func() { int i,k; k=-1; next[0]=-1; ... 阅读全文
posted @ 2014-02-27 10:48 goodniao_1 阅读(305) 评论(0) 推荐(0)
 

2014年2月25日

初识KMP(KMP模板 + KMP理论知识) hdu 1686
摘要: 一,kmp 模板前缀函数 即next函数数组下标从0开始void Prefix_Func() { int i,k; k=-1; next[0]=-1; for(i=1;i=0 && P[k+1]!= P[i]) k=next[k]; ... 阅读全文
posted @ 2014-02-25 18:44 goodniao_1 阅读(276) 评论(0) 推荐(1)
 

2014年2月24日

hdu 1106 字符串处理
摘要: 这题主要用到字符串的分割,和字符型转换成整型,这其实可以用两个函数来代替。atoi这个函数原来做进制转换的时候就接触过。如果第一个非空格字符不存在或者不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。strtok函数,感觉这个比较新鲜。下面从百度百科摘点介绍:原型 char *strtok(char *s, const char *delim);功能 分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。说明 strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串,参数delim则为分割字符... 阅读全文
posted @ 2014-02-24 16:10 goodniao_1 阅读(232) 评论(0) 推荐(1)
 
上一页 1 ··· 10 11 12 13 14 15 下一页