李景旺的博客

www.jingwangl.com

297:Quadtrees

Quadtrees建树递归,合并也递归。在合并的时候要注意只有两个没有子节点的节点之间才可以合并,可能会遇到三种情况:1. 两个都是最小单元(相对本身),直接合并;2. 其中一个有子节点,依次其将其子节点与另一个节点合并;3. 两个都有子节点,依次将其子节点按顺序进行合并(两者此时子节点面积必定相...

2018-05-31 23:22:02

阅读数:35

评论数:0

669:The Falling Leaves

The Falling Leaves这道题还是递归,仿照上道题的思路挺容易的,不过看了看书上的代码个人觉得我的代码更简洁,思路更清晰些哈哈。我的思路:开个负下标数组,记录每个位置的权重之和,用 p 记录当前节点位置,那么其左节点位置为 p - 1,右节点位置为 p + 1,依次递归增加相应位置的权...

2018-05-31 13:25:43

阅读数:18

评论数:0

839:Not so Mobile

Not so Mobile 我的思路:可以将天平看做一棵二叉树,二叉树的每个节点要记录其父节点。然后其实就是一个建树的过程,遇到 0 节点就向下延伸,每当一个节点的左右子树确定(其重量也随之确定),就计算其是否平衡,然后一直向上追溯,直到该节点尚未平衡,继续建树,直至整棵树建好,是否平衡也随之确定...

2018-05-31 00:29:22

阅读数:20

评论数:0

548:Tree

Tree首先根据中序遍历和后序遍历递归地构造二叉树(后续遍历的最后一个节点为二叉树的根节点),然后前序遍历。输入有点坑,你说你直接告诉多少个节点多好。。。我想的是先用fets读取整个串,然后用atoi转化为数字,本地运行没问题可是一提交就报错,暂时还没找到原因,大概是因为回车符的问题,参考了别人的...

2018-05-29 23:22:48

阅读数:23

评论数:0

122:Trees on the level

Trees on the level哈哈 这次是一次AC,好开心啊version 1(指针链表版):#include<bits/stdc++.h> using namespace std; const int maxn = 256 + 5; struct...

2018-05-28 23:40:48

阅读数:19

评论数:0

679:Dropping Balls

Dropping Balls直接模拟似乎很简单,但是会超时。。。每个小球都会落在根结点上,因此前两个小球必然是一个在左子树,一个在右子树。一般地,只需看小球编号的奇偶性,就能知道它是最终在哪棵子树中。对于那些落入根结点左子树的小球来说,只需知道该小球是第几个落在根的左子树里的,就可以知道它下一步往...

2018-05-28 18:34:13

阅读数:18

评论数:0

12657:Boxes in a Line

Boxes in a Line考虑到反转单向链表时间开销太大,所以先用的是双向链表,这样只需要记录反转操作的次数即可,若最后次数为偶数,则从左往右加;若为奇数,则从右往左加。没想到还是超时了。。。version 1(超时):#include<bits/stdc++.h&...

2018-05-23 17:34:44

阅读数:13

评论数:0

11988:Broken Keyboard (a.k.a. Beiju Text)

Broken Keyboard (a.k.a. Beiju Text)#include<bits/stdc++.h> using namespace std; const int maxn = 100000 + 5; char s[maxn]; int ...

2018-05-23 11:58:59

阅读数:22

评论数:0

442:Matrix Chain Multiplication

Matrix Chain Multiplication这道题比较简单,考察栈在表达式求值中的应用,看了书上代码之后才发现我考虑复杂了。。。其实题目中括号中只有个两个矩阵,我以为会有多个矩阵,所以将"("(用(0,0)代替)也压入了堆栈,用来判断什么时候停止合并。...

2018-05-20 22:11:24

阅读数:10

评论数:0

514:Rails

Rails #include<bits/stdc++.h> using namespace std; const int maxn = 1000 + 5; int main(){ // freopen("data.in&...

2018-05-19 23:40:52

阅读数:16

评论数:0

210:Concurrency Simulator

Concurrency Simulator新鼠标新耳机好舒服啊 好享受这种听着喜欢的歌写着代码的感觉#include<bits/stdc++.h> using namespace std; const int maxn = 1000 + 5; int n...

2018-05-03 13:59:58

阅读数:34

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭