- 博客(5)
- 收藏
- 关注
原创 hdu 1717 小数化分数2
#include #include #include int zui(__int64 zi,__int64 mu) { __int64 z; do { z=mu%zi; mu=zi; zi=z; }while(zi!=0); return mu; } void shu(__int64 zi,__int64 mu) { __int64 a; a=zui(zi,mu); i
2013-05-15 20:02:13 794
原创 hdu 4076 Haunted Graveyard - spfa(负权回路)
/* hdu 4076 Haunted Graveyard - spfa(负权回路) 题意:有n*m个点,每一点可以向四个方向走,有些点是墓地不能走,有些点是山洞,当你走到该点时会传送到另外一点,所花费的时间有可能是个正数也可能是个负数 也可能是0。起点是(0,0),目的地是(n-1,m-1),题目保证起点和终点不会是墓地也不会是山洞。如果有可能永远都到达不了终点也就是该图存在负权回路,输出Nev
2013-05-15 19:52:50 1110
原创 hdu 2686 Matrix - 最小费用最大流 或 多线程DP
/* hdu 2686 Matrix 方阵(每个格子里面都有一个数字)里面从左上走到右下,再回来,一个点只能走一次,求数字之和最大是多少 相当与从左上到右下选两条不交叉的路,使和最大 典型的最大费用最大榴 我要说的是,这是昨天的省赛的原题,当时就像到了什最大费用最大流,但是当时脑袋一热,又感觉不是(韩式我对这个算法的理解不够啊) 其实只要在那个模板(http://blog.csdn.net/qq
2013-05-13 21:09:59 956 1
原创 hdu 4080 Stammering Aliens - 后缀数组
/* 其实这题才是第一次做 但是一直不过,也不知道怎么回事儿 就去调了那个简单题做 现在才发现少了main里面的if 还有ok2 是我之前写的,但是少了个{} 题意是,在所给的字符串中找一个子串,最少出现m次,求那个最长的串,并输出最后一次的开始位置 按长度二分,判断是否符合条件即可 */ #include #include const int maxn=500010; i
2013-05-07 20:53:30 949
原创 hdu 1403 Longest Common Substring - 后缀数组
/* 第一次做后缀数组 就是求连个串的公共子串 简单的后缀数组 */ #include #include #define MAXN 200010 char str[100000+10]; int r[100000*2+10]; int wa[MAXN], wb[MAXN], wv[MAXN], ws[MAXN]; int sa[MAXN]; //index range 1~n va
2013-05-07 19:48:57 708
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人