摘要: 一、叉积叉积的计算是线段方法的核心。对于向量p1和p2,叉积是由点(0,0)、p1、p2和p1+p2构成的平行四边形的有向面积。另一种与之等价但更有效的的叉积定义方式是将其看做矩阵行列式:p1×p2 = x1y2 - x2y1 = - p2×p1若p1×p2为正,则相对于原点(0,0)来说,p1位于... 阅读全文
posted @ 2015-01-28 10:42 PJQOOO 阅读(1847) 评论(1) 推荐(2)
摘要: 筛选法+求一个整数的分解+快速模幂运算+递归求计算1+p+p^2+````+p^nPOJ 1845 Sumdiv求A^B的所有约数之和%9901*/#include#include#include#include#includeusing namespace std;#define MOD 9901... 阅读全文
posted @ 2015-01-27 10:12 PJQOOO 阅读(281) 评论(0) 推荐(0)
摘要: 第一道:poj 1905Expanding Rods 题意:两道墙(距离L)之间架一根棒子,棒子受热会变长,弯曲,长度变化满足公式( s=(1+n*C)*L),求的是弯曲的高度h。 首先来看这个图: 如图,蓝色为杆弯曲前,长度为L 红色为杆弯曲后,长度为s h是所求。 又从图中得到三条关系式; (1 阅读全文
posted @ 2015-01-26 17:11 PJQOOO 阅读(377) 评论(0) 推荐(0)
摘要: 题意: 如上图所示,将一个字符串进行分割,反转等操作后不同字符串的个数: 例如字符串abba:可以按三种比例分割;1:3;2:2;3:1 部分反转可以得到如下所有的字符串: 去掉重复可以得到六个不同的字符串,输出6; 解题思路: 此题用反转函数reverse比较方便,然后就和模拟差不多,要列出所有情 阅读全文
posted @ 2015-01-26 09:50 PJQOOO 阅读(265) 评论(0) 推荐(0)
摘要: 题意:每个物品看成一个节点,酋长的允诺也看作一个物品, 如果一个物品加上金币可以交换另一个物品,则这两个节点之间有边,权值为金币数,求第一个节点到所有节点的最短路。 因为有等级限制,所以枚举每个点作为最低等级,选取符合所有符合等级限制的点 最短路问题,不过因为存在着等级的差异所以需要枚举一下。本题的 阅读全文
posted @ 2015-01-25 15:10 PJQOOO 阅读(218) 评论(0) 推荐(0)
摘要: 我们都知道 二分查找 适用于单调函数中逼近求解某点的值。 如果遇到凸性或凹形函数时,可以用三分查找求那个凸点或凹点。 下面的方法应该是三分查找的一个变形。 如图所示,已知左右端点L、R,要求找到白点的位置。 思路:通过不断缩小 [L,R] 的范围,无限逼近白点。 做法:先取 [L,R] 的中点 mi 阅读全文
posted @ 2014-12-13 21:39 PJQOOO 阅读(3346) 评论(1) 推荐(0)
摘要: 一.邻接矩阵存储方法 邻接矩阵是表示顶点之间相邻关系的矩阵。设G=(V,E)是具有n个顶点的图,顶点的顺序依次是(v0,v1,v2,.....vn-1),则G的邻接矩阵A是n阶方阵: 若A是无向图,A[i][j]=1,表示i,j之间有一条边,i到j可达且j到i可达。若A是无向图,A[i][j]=... 阅读全文
posted @ 2014-11-14 21:05 PJQOOO 阅读(2480) 评论(0) 推荐(2)
摘要: 链接:http://acm.sdibt.edu.cn/JudgeOnline/problem.php?id=2746Description用二叉树的带虚结点表示的前序遍历序可以唯一的确定一棵二叉树。Input输入包含多组数据。每行是一棵二叉树的带虚结点(#)表示的前序遍历序串,长度不超过2000。每... 阅读全文
posted @ 2014-11-14 12:40 PJQOOO 阅读(5304) 评论(0) 推荐(0)
摘要: 介绍哈夫曼编码之前先介绍一下哈弗曼树:哈夫曼树:哈夫曼树又称最优二叉树,是一种带权路径长度最短的二叉树。所谓树的带权路径长度,就是树中所有的叶结点的权值乘上其到根结点的路径长度(若根结点为0层,叶结点到根结点的路径长度为叶结点的层数)。树的带权路径长度记为WPL=(W1*L1+W2*L2+W3*L3... 阅读全文
posted @ 2014-11-11 02:44 PJQOOO 阅读(12176) 评论(2) 推荐(3)
摘要: 题目大意:给你两个数l,r(l<r),求一个数是大于等于l且小于等于r的数中二进制数的1的个数最多,如果1的个数相同则取最小的那个(翻译渣,请见谅!) 思路:把左区间L化为二进制,再把左区间的二进制的从最小位开始,每位变为1,因为这是在当前1的个数中最小的且大于L的。条件是小于等于右区间R。 代码: 阅读全文
posted @ 2014-11-10 17:21 PJQOOO 阅读(232) 评论(0) 推荐(0)
摘要: 1.Map是c++的一个标准容器,它提供了很好一对一的关系。Map是一种关联是容器,在map中增加和删除元素非常容易。可以修改一个特定的节点而不对其他节点不产生影响,由于map是一种关联式容器,Key--value结构我们必须明确,在map中我们可以根据key的值修改其对应的value的值,而不能修... 阅读全文
posted @ 2014-11-09 15:31 PJQOOO 阅读(1388) 评论(3) 推荐(4)
摘要: 题意:给定两个字符串,求它们对齐匹配的最大值要求:可以两个字符匹配,也可以一个字符和‘-’匹配,但是不能两个‘-’匹配,例如:AGTGATGGTTAG这两个字符串可以看成是AGTGATG-GTTA-G也可以看成是AGTGAT-G-GT--TAG分析:这是一个变形的最长公共子序列,最优解:1.取字符i... 阅读全文
posted @ 2014-11-07 21:04 PJQOOO 阅读(362) 评论(0) 推荐(0)
摘要: 二叉树:二叉树是每个结点最多有两个子树的有序树。先来介绍一下二叉树的一些基本性质吧~二叉树的性质:1.非空二叉树上叶子结点数等于双分支节点数加一。性质1 二叉树第i层上的结点数目最多为2i-1(i≥1)。证明:用数学归纳法证明: 归纳基础:i=1时,有2i-1=20=1。因为第1层上只有一个根结点... 阅读全文
posted @ 2014-11-07 15:29 PJQOOO 阅读(5089) 评论(8) 推荐(2)
摘要: 知道是数独问题后犹豫了一下要不要做(好像很难的样纸==。),用dfs并剪枝,是一道挺规范的搜索题。先介绍以下数独吧~数独(Sudoku)是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格 的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1-9,不重复。 ... 阅读全文
posted @ 2014-11-04 20:14 PJQOOO 阅读(2557) 评论(0) 推荐(0)
摘要: 转自http://www.cnblogs.com/ngnetboy/archive/2013/03/13/2949188.html我们来看看这个矩阵,五行五列,可以包含二十五个元素,但是此矩阵只有七个元素。但是我们在存放数据的时候分配了二十五块int单元。这样是不是有点太 浪费了。如果我们只存储这七... 阅读全文
posted @ 2014-10-31 15:51 PJQOOO 阅读(708) 评论(0) 推荐(0)
摘要: 题意:给你一个图,告诉你起始点S,终点E,‘.’可走,‘#’不可走。求从起点到终点1.总是先选择向左走的步数。2.总是选择先向右走的步数。3.最短路思路: 对于第一种和第二种,用深搜,只要写对存方向的数组即可:int r[4][2]= {{0,-1},{1,0},{0,1},{-1,0}};int ... 阅读全文
posted @ 2014-10-02 11:06 PJQOOO 阅读(223) 评论(0) 推荐(0)
摘要: 题意:在圆上取n个点,相邻两个点之间连线,(注意,n和1相邻),然后所有点对(i ,i+2)相连,问能形成的不同的三角形有多少个?思路:找规律 n=3,cnt=1; n=4,cnt=8; n=5 cnt=35 (5*2+5*2+ 5+5+5); n=6 cnt= 32 ... 阅读全文
posted @ 2014-09-29 17:36 PJQOOO 阅读(222) 评论(0) 推荐(0)
摘要: 算法是采用分治法(Divide and Conquer)的一个非常典型的应用。首先考虑下如何将将二个有序数列合并。这个非常简单,只要从比较二个数列的第一个数,谁小就先取谁,取了后就在对应数列中删除这个数。然后再进行比较,如果有数列为空,那直接将另一个数列的数据依次取出即可。 1 //将有序数组a[]... 阅读全文
posted @ 2014-09-28 11:54 PJQOOO 阅读(207) 评论(0) 推荐(0)
摘要: 题目链接:http://poj.org/problem?id=2632题目大意:题意简单,N个机器人在一个A*B的网格上运动,告诉你机器人的起始位置和对它的具体操作,输出结果:1.Robot i crashes into the wall, if robot i crashes into a wal... 阅读全文
posted @ 2014-09-21 16:06 PJQOOO 阅读(269) 评论(0) 推荐(0)
摘要: 题目地址链接:http://poj.org/problem?id=1753题目大意: 有4*4的正方形,每个格子要么是黑色,要么是白色,当把一个格子的颜色改变(黑->白或者白->黑)时,其周围上下左右(如果存在的话)的格子的颜色也被反转,问至少反转几个格子可以使4*4的正方形变为纯白或者纯黑?解题思... 阅读全文
posted @ 2014-09-19 14:35 PJQOOO 阅读(421) 评论(1) 推荐(0)
摘要: 题意: 给你N和K,问能否将N拆分成K个互不相同的正整数,并且其中K-1个数的和为完全平方数. PS:这道题目原来是要求输出一种可行方案的,所以下面题解是按照输出方案的思想搞的。 分析: 我们尝试枚举那个完全平方数S,然后看能否将他拆分为 K-1 个数,并且不用到N-S 这一步可以用贪心+一次调整来搞定。为了保证 K-1个数都不同,我们尝试尽量用 1,2,3...这些连续自然数来构造,如果 N-S... 阅读全文
posted @ 2014-08-25 21:11 PJQOOO 阅读(499) 评论(0) 推荐(0)
摘要: 感谢CJ同学监督╭(╯^╰)╮。从放假到现在都木有更新博客了~噶呜~小娘谨记教诲,每天会更新博客==!!看了一下POJ训练计划,虽然已经零零散散做了40多道题了,还是从头开始整理一下漏掉的知识点。Today is 枚举~!很多人认为枚举是笨笨的,但是枚举却又总是我们面对算法问题时的第一反应,也比较容... 阅读全文
posted @ 2014-08-21 19:30 PJQOOO 阅读(1164) 评论(4) 推荐(1)
摘要: POJ 3628 Bookshelf 2:http://poj.org/problem?id=3628题意:有个书架,高度为B,现在FJ有N个奶牛,每个奶牛有个高度hi,现在将奶牛堆起来,使得堆起来的高度大于等于B,现在要求最小高度差。思路一: 01背包:把奶牛的高度总和减去B,就是这个背包的容量,... 阅读全文
posted @ 2014-08-13 09:56 PJQOOO 阅读(249) 评论(0) 推荐(0)
摘要: 多重背包:基本思路: 先来看一个引例:有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。这种类型的背包问题的特点是:每件物品的件数有限。 和完全背包问题很类似。基本的方程只... 阅读全文
posted @ 2014-08-12 16:23 PJQOOO 阅读(716) 评论(2) 推荐(1)
摘要: 昨天小小总结了01背包:01背包不足之处还望多提意见~噶呜~今天来总结一下完全背包:完全背包: 基本思路:类似于01背包,所不同的是每种物品有无限件。也就是从每种物品的角度考虑,策略已经不是取与不取两种,而是取0件,取1件,..等很多种,如果仍按01背包的思路,令f[i][v]表示前i种物品恰放入一... 阅读全文
posted @ 2014-08-11 20:05 PJQOOO 阅读(497) 评论(0) 推荐(0)