- 博客(24)
- 收藏
- 关注
原创 整数拆分
整数拆分今天学习了一个叫做整数拆分的算法 问题描述: 给定一个整数n,输出这个整数拆分的可能总数递归写法先上完整代码:/** * 整数n 的拆分次数 * @param n 被拆分的次数 * @param m 每次拆分的最大数值 * @return 拆分次数 */int rec(int n, int m) { if (n==1 || m==1)
2016-03-16 00:02:43
814
原创 BFS(简单路径打印)
BFS路径打印#include <cstdio>#include <iostream>#include <queue>using namespace std;int vis[10][10];int maze[10][10];int dir[2][2] = {{1,0},{0,1}};struct node{ int x, y;};node q[10][10];void bfs()
2015-08-10 16:35:41
1932
原创 KMP算法
这位大大的博客关于KMP的原理的讲解KMP算法的大致讲解 这位大大的一篇很长很长的关于KMP的细致讲解KMP细致讲解建议看第一篇自己理解后,再去第二篇验证自己的想法,而且这两篇博客里面的东西稍有不同,建议自己先Code一遍,再看第二篇,我的注释也会帮助你理解KMP中的一些边界处理的事看了好久的KMP几天终于可以真正的理解了,那个next数组中的一个递归的概念真的很厉害next[next[j]] 看
2015-08-05 11:48:04
418
原创 HIHO1105(堆的基础应用)
HIHO1105 又是一道水题堆分为大根堆和小根堆,而其中的对堆的操作有存和取,“取”操作是取堆中最大(最小)的元素,在STL中priority_queue中实现了这两个功能,就有了如下代码:#include <cstdio>#include <iostream>#include <cstdlib>#include <cmath>#include <cstring>#include <s
2015-08-03 11:09:08
410
原创 HIHO1176(无向图欧拉路)
hihoCoder1176题【没有账号登不进去的】 其实,也没有什么好说的,并查集判断无向图的连通性,再根据欧拉路的充要条件判断就可以解决本题了,也算是水题#include <cstdio>#include <iostream>#include <cstdlib>#include <cmath>#include <cstring>#include <string>#include <m
2015-08-03 10:30:22
569
原创 HDU1018(也是水题)
HDU1018 今天,第四道水题了#include <cstdio>#include <iostream>#include <cstdlib>#include <cmath>#include <cstring>#include <string>#include <map>#include <stack>#include <queue>#include <vector>#incl
2015-08-02 21:54:35
321
原创 HDU1570水题
HDU1570 不能再水题了#include <cstdio>#include <iostream>#include <cstdlib>#include <cmath>#include <cstring>#include <string>#include <map>#include <stack>#include <queue>#include <vector>#include
2015-08-02 21:33:58
368
原创 第二道水题
HDU2053 水题,自己打表观察规律搞定#include <cstdio>#include <iostream>#include <cmath>#include <algorithm>using namespace std;#define RF freopen("1.txt", "r", stdin);#define WF freopen("11.txt", "w", stdout)
2015-08-02 21:21:11
458
原创 又开始刷题
HDU2560 杭电超级水题#include <cstdio>#include <iostream>#include <cstdlib>#include <cmath>#include <cstring>#include <string>#include <map>#include <stack>#include <queue>#include <vector>#include
2015-08-02 20:48:23
363
转载 POJ1753
#include #include #include #include #include #include #include #include #define INT_MIN 0x80000000#define INT_MAX 0xffffffff#define N 1000#define MAX(a,b) (a)>(b)?(a):(b)#define MIN(a,b) (
2015-03-26 22:14:20
307
转载 Manacher算法(最长子回文串)
HDU3068 POJ3974#include #include #include #include #include #include #include #include #define INT_MIN 0x80000000#define INT_MAX 0xffffffff#define N 1001000#define MAX(a,b) (a)>(b)?(a):(b
2015-03-22 17:57:35
759
转载 HDU3555数位dp
#include #include #include #include #define N 100010#define LL long long#define debug(x) cout<<#x<<":"<<(x)<<endl;using namespace std;int a[25];LL dp[25][3];int main(){ // input mem
2015-03-15 12:43:43
284
转载 POJ1520
/*vecotr_change POJ1520*/#include #include #include #include #include #include #include #include #define INT_MIN 0x80000000#define INT_MAX 0xffffffff#define N 100#define MAX(a,b) (a)>(b)?(
2015-02-13 15:12:17
481
转载 走迷宫最短路问题
/*vector_change 走迷宫最短路问题*//*10 100 1 9 8#S########......#..#.#.##.##.#.#........##.##.####....#....#.#######.#....#......####.###.....#...G#*/#include #include #include #in
2015-02-09 21:48:23
624
转载 POJ2299 树状数组求逆序数
/*vector_change POJ2299*/#include #include #include #include #define N 500010#define LL long longusing namespace std;struct node{ int ord; LL v;} p[N+1];int a[N];int c[N];int n;i
2015-02-09 01:14:35
297
转载 POJ2386
/*vector_change POJ--2386*/#include #include #define N 110using namespace std;int dir[8][2] = { {1,0},{1,1},{0,1},{-1,1},{-1,0},{-1,-1},{0,-1},{1,-1} }; //八个方向char fr[N][N];int n, m;void dfs(
2015-02-09 01:06:11
322
转载 HDU1060
#include #include #include #define LL long long#define debug(x) cout<<#x<<":"<<(x)<<endl;using namespace std;int main(){ //freopen("1.txt", "r", stdin); int tt; int num; scanf("
2015-02-08 15:46:57
331
转载 快速幂的递归和非递归实现
#include #include #include #include #include #define LL long long#define MAX(a,b) (a)>(b)?(a):(b)#define MIN(a,b) (a)<(b)?(a):(b)using namespace std;//快速幂非递归版LL quick( LL a, LL pow ){ L
2015-02-08 01:24:41
2430
转载 HDU1372
/*vector_change ---HDU1372*/#include #include #include #include using namespace std;/*问题目标仅仅只是要知道是否存在一条路径从fx,fy到达lx,ly*/int dir[8][2] ={{-2,1},{-1,2},{1,2},{2,1},{2,-1},{1,-2},{-1,-2},{-2,-1}};
2015-02-05 22:06:48
439
转载 HDU1081
/*vector_change --- HDU1081*/#include #include #include #include #define INT_MIN 0x80000000#define INT_MAX 0x7fffffff#define N 110#define MAX(a,b) (a)>(b)?(a):(b)#define LL long long#define
2015-02-05 15:34:22
468
转载 HDU1021
/*vector_change --- HDU1021*/#include #include #include #define N 1000#define LL long long#define debug(x) cout<<#x<<":"<<(x)<<endl;using namespace std;int f[N];// 15-2-5int main(){ int
2015-02-05 02:13:54
284
转载 HDU1019
虽然代码都是自己写的,还是转载的比较省时间/*vector_change---HDU1019*/#include #include #include #define N 100010#define LL long long#define debug(x) cout<<#x<<":"<<(x)<<endl;using namespace std;//15-2-5int gcd(
2015-02-05 01:42:55
415
转载 HDU1020
用这种方法实现的代码好像在哪看过,但忘记了在哪了/*vector_change----HDU1020*/#include #include #include #include #define N 1010#define LL long long#define debug(x) cout<<#x<<":"<<(x)<<endl;using namespace std;//15-
2015-02-05 01:04:02
461
原创 HDU1004
/*vector_change*/#include #include #include using namespace std;//15-2-5int main(){ //freopen("1.txt", "r", stdin); int n; map m; string s; while( cin >> n && n ) {
2015-02-05 00:17:22
254
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人