随笔分类 - POJ解题报告
摘要:POJ.3667 Hotel ( 线段树 )题意分析还需要好好理解一下代码总览#include #include #include #define nmax 200010using namespace std;struct Tree{ int l,r; int lenma...
阅读全文
摘要:POJ.2763 Housewife Wind ( 边权树链剖分 线段树维护区间和 )题意分析给出n个点,m个询问,和当前位置pos。 先给出n-1条边,u->v以及边权w。 然后有m个询问,询问分2种: 一是讲第i条边的边权修改为w。 二是询问从当前位置走到点x经过的边权和(下次询...
阅读全文
摘要:POJ.3321 Apple Tree ( DFS序 线段树 单点更新 区间求和)题意分析卡卡屋前有一株苹果树,每年秋天,树上长了许多苹果。卡卡很喜欢苹果。树上有N个节点,卡卡给他们编号1到N,根的编号永远是1.每个节点上最多结一个苹果。卡卡想要了解某一个子树上一共结了多少苹果。现在...
阅读全文
摘要:POJ.1986 Distance Queries ( LCA 倍增 )题意分析给出一个N个点,M条边的信息(u,v,w),表示树上u-v有一条边,边权为w,接下来有k个询问,每个询问为(a,b),求a,b两点到lca(a,b)的边权之和为多少。倍增维护树上前缀和,求得LCA之后,相...
阅读全文
摘要:POJ.1330 Nearest Common Ancestors (LCA 倍增)题意分析给出一棵树,树上有n个点(n-1)条边,n-1个父子的边的关系a-b。接下来给出xy,求出xy的lca节点编号。LCA裸题,用倍增思想。代码总览#include #include #inclu...
阅读全文
摘要:POJ.1067 取石子游戏 (博弈论 威佐夫博弈)题意分析简单的威佐夫博弈 博弈论快速入门代码总览#include #include #include using namespace std;int main(){ int n,m; while(scanf("%d %d...
阅读全文
摘要:POJ.3468 A Simple Problem with Integers(线段树 区间更新 区间查询)题意分析注意一下懒惰标记,数据部分和更新时的数字都要是long long ,别的没什么大坑。代码总览#include #include #include #define nma...
阅读全文
摘要:POJ.2299 Ultra-QuickSort (线段树 单点更新 区间求和 逆序对 离散化)题意分析前置技能 线段树求逆序对 离散化 线段树求逆序对已经说过了,具体方法请看这里离散化 有些数据本身很大,自身无法作为数组的下标保存对应的属性。 如果这时只是需要这堆数据的相对属性,...
阅读全文
摘要:POJ.3894 迷宫问题 (BFS+记录路径)题意分析定义一个二维数组: int maze[5][5] = {0, 1, 0, 0, 0,0, 1, 0, 1, 0,0, 0, 0, 0, 0,0, 1, 1, 1, 0,0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表...
阅读全文
摘要:POJ.3414 Pots (BFS)题意分析给你两个容器,分别能装下A升水和B升水,并且可以进行以下操作 FILL(i) 将第i个容器从水龙头里装满(1 ≤ i ≤ 2); DROP(i) 将第i个容器抽干 POUR(i,j) 将第i个容器里的...
阅读全文
摘要:POJ.3087 Shuffle’m Up (模拟)题意分析给定两个长度为len的字符串s1和s2, 接着给出一个长度为len*2的字符串s12。将字符串s1和s2通过一定的变换变成s12,找到变换次数变换规则如下:假设s1=12345,s2=67890变换后的序列 s=617283...
阅读全文
摘要:POJ.3126 Prime Path (BFS)题意分析给出一个四位的起始素数sta和一个四位的终止素数end, 保证end>=sta. 每次我们可以对这个sta变化它的一位,使得它变成一个新的数字,但是这个数字必须是素数。求得从sta变到end最小的操作次数。首先需要打一个100...
阅读全文
摘要:POJ.1426 Find The Multiple (BFS)题意分析给出一个数字n,求出一个由01组成的十进制数,并且是n的倍数。思路就是从1开始,枚举下一位,因为下一位只能是0或1,故这个数字只能是1 * 10或者1 * 10 + 1。就按照这种方式枚举,依次放入队列,如果是其...
阅读全文
摘要:POJ.3279 Fliptile (搜索+二进制枚举+开关问题)题意分析题意大概就是给出一个map,由01组成,每次可以选取按其中某一个位置,按此位置之后,此位置及其直接相连(上下左右)的位置(如果有)的0变成1,1变成0。现在求需要按多少次,才能使得整个map全部变成0。此题解法...
阅读全文
摘要:POJ.3278 Catch That Cow (BFS)题意分析给出给出初始坐标N,你可以执行的操作有N-1,N+1,N*2,求出最少需要几次操作,使得N=K。BFS时每次有3种操作,按照操作来即可。特别需要注意越界的问题,坐标不能小于0,也不能大于题目给的最大值100000.然后...
阅读全文

浙公网安备 33010602011771号