- 博客(13)
- 收藏
- 关注
原创 威佐夫博弈
点击打开链接百度百科链接判断(a,b)是否为奇异地势看 if(at=a-b;if(b==(int)(t*(1+sqrt(5))/2)){ 为奇异地势 ( 先手必败 )}else 非奇异地势
2016-07-30 13:49:23 179
原创 HDU Life 5754 Winner Bo 各类博弈
http://acm.hdu.edu.cn/showproblem.php?pid=5754题意:一个国际象棋棋盘,有四种棋子,从(n,m)走到(1,1),走到(1,1)的人赢,先手赢输出B,后手赢输出G,平局输出D。题解:先把从(n,m)走到(1,1)看做是从(1,1)走到(n,m)。四种棋子的规则如下:1、王(King):横、竖、斜都可以走,每次限走一格
2016-07-30 13:26:12 338
原创 HDU 5761 Rower Bo 物理题(积分求时间)
点击打开链接题意:有一个船在(0,a),船头的方向一直指着(0,0)位置,速度是v1,然后有一个水流速度是v2,朝着x轴正半轴方向流。问你什么时候船到达(0,0)位置题解:首先这个题微分方程强解显然是可以的,但是可以发现如果设参比较巧妙就能得到很方便的做法。先分解v_1v1,设船到原点的距离是rr,容易列出方程\fr
2016-07-29 10:51:38 375
原创 HDU 5762 Teacher Bo 2016多校赛第三场 鸽巢原理
点击打开链接题意:给你n个点,让你找两个数对,A,B和C,D,使得A和B的曼哈顿距离等于C和D的曼哈顿距离,问是否存在这样的对,A!=C且B!=D.因为点坐标的范围为105,所以说,两个点的曼哈顿距离最多只有2∗105,根据鸽巢原理,所以说暴力枚举的复杂度也是2∗105,#include#define LL long longconst int NN=1e6+10;using
2016-07-29 08:58:07 274
原创 HDU 5723 2016多校赛第一场 最小生成树+记忆化搜索
点击打开链接题目大意:有n(n因为n很大所以用kruskal求最小生成树求出最小花费,然后dfs搜索回溯的办法找到所有情况每条路用过的次数并求出总花费,用总花费除以所有可能发生的次数(n*(n-1)/2)就是我们要求的期望。其中用到vector容器进行dfs;#include#define LL long longconst int NN=1e6+10;using nam
2016-07-27 10:54:05 337
原创 pat笛卡尔树
笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字满足优先队列(不妨设为最小堆)的顺序要求,即该结点的K2值比其子树中所有结点的K2值小。给定一棵二叉树,请判断该树是否笛卡尔树。输入格式:输入首先给出正整数N(\le≤1000),为树中结点的个数。随后N行
2016-07-13 21:26:14 724
原创 调用C++11编译器 //支持c++11
DEVc++的c++11调用方法http://tieba.baidu.com/p/2933212687如何让你的Sublime和Codeblocks支持C++11http://www.cnblogs.com/Chierush/p/3317886.html
2016-07-13 19:58:19 2044
原创 已知先序中序求树的高度或叶子数
#includeusing namespace std;char head[1000],mid[1000];int n;int Find(int ind,int low,int high){ int i=-1; for(i=low;i<=high;i++){ if(head[ind]==mid[i]) break; } return i;}int solve(int i
2016-07-13 16:58:15 445
原创 堆中的路径
将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数NN和MM(\le 1000≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的NN个要被插入一个初始为空的小顶堆的整数。最后一行给出MM个下标。输出格式:对输入中
2016-07-12 22:06:12 590
原创 pat 整数分解为若干项之和
将一个正整数N分解成几个正整数相加,可以有多种分解方法,例如7=6+1,7=5+2,7=5+1+1,…。编程求出正整数N的所有整数分解式子。输入格式:每个输入包含一个测试用例,即正整数N (0N\le≤30)。输出格式:按递增顺序输出N的所有整数分解式子。递增顺序是指:对于两个分解序列N_1=N1={n_1, n_2, \cdotsn1,n2,
2016-07-12 11:15:23 2438 2
原创 顺序存储的二叉树的最近的公共祖先问题
5-10 顺序存储的二叉树的最近的公共祖先问题 (25分)设顺序存储的二叉树中有编号为ii和jj的两个结点,请设计算法求出它们最近的公共祖先结点的编号和值。输入格式:输入第1行给出正整数nn(\le 1000≤1000),即顺序存储的最大容量;第2行给出nn个非负整数,其间以空格分隔。其中0代表二叉树中的空结点(如果第1个结点为0,则代表一棵空树);第3行给出一
2016-07-02 21:19:59 4388
原创 5-13 六度空间 BFS 查找各个点之间的距离(有减枝)
5-13 六度空间 “六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理
2016-07-02 21:18:13 620
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人