05 2024 档案

摘要:[JLOI2009] 二叉树问题 题目描述 如下图所示的一棵二叉树的深度、宽度及结点间距离分别为: 深度:$4$ 宽度:$4$ 结点 8 和 6 之间的距离:$8$ 结点 7 和 6 之间的距离:$3$ 其中宽度表示二叉树上同一层最多的结点个数,节点 $u, v$ 之间的距离表示从 $u$ 到 $v 阅读全文
posted @ 2024-05-30 16:10 若把你比作歌 阅读(24) 评论(0) 推荐(0) 编辑
摘要:洛谷P1087 递归建立树,根据当前树的类型,选择“F”“B”“I” void build(int depth, int start, int end, int root){ if (depth >= n+1) return; int current = root; int flag = check 阅读全文
posted @ 2024-05-27 17:33 若把你比作歌 阅读(14) 评论(0) 推荐(0) 编辑
摘要:洛谷P1030 输入中序先序序列,输出后序 l1-l2为当前中序遍历序列 l3-l4为当前后序遍历序列 #include<bits/stdc++.h> using namespace std; string a, b; struct node{ char self; int left, right; 阅读全文
posted @ 2024-05-27 15:14 若把你比作歌 阅读(10) 评论(0) 推荐(0) 编辑
摘要:洛谷P1229 计算有多少个节点只有一个子节点。输出pow(2, n) #include<bits/stdc++.h> using namespace std; int main() { string a, b; int ans = 0; cin >> a >> b; int l = a.size( 阅读全文
posted @ 2024-05-24 17:21 若把你比作歌 阅读(4) 评论(0) 推荐(0) 编辑
摘要:洛谷P1364 #include<bits/stdc++.h> using namespace std; struct node{ int value, left, right, p; node(int v, int l, int r): left(l), right(r), value(v){} 阅读全文
posted @ 2024-05-24 17:04 若把你比作歌 阅读(3) 评论(0) 推荐(0) 编辑
摘要:洛谷P5076 #include<bits/stdc++.h> using namespace std; int n, root, cnt, opt, x; struct node{ int value, left, right, size, num; node(int l, int r, int 阅读全文
posted @ 2024-05-24 16:34 若把你比作歌 阅读(13) 评论(0) 推荐(0) 编辑
摘要:洛谷P1827 输入中序先序序列,输出后序 l1-l2为当前中序遍历序列 l3-l4为当前先序遍历序列 #include<bits/stdc++.h> using namespace std; string a, b; void build(int l1, int l2, int l3, int l 阅读全文
posted @ 2024-05-24 01:27 若把你比作歌 阅读(7) 评论(0) 推荐(0) 编辑
摘要:高精度 洛谷P2437 蜜蜂路线 这题是一道简单的求斐波那契数列题,但由于题目所给数字比较大,所以需要用到高精度。 主要代码 void fun() { for(int i = 0; i <= length; i++) { re[now][i] = re[now-1][i] + re[now-2][i 阅读全文
posted @ 2024-05-22 18:38 若把你比作歌 阅读(10) 评论(0) 推荐(0) 编辑
摘要:这个题思路和洛谷P2440有点像,建议先看P2440这个题,较简单。 二分答案 题目详见洛谷P3853路标设置 思路 建议先看这里,我的另一个博客 这里先贴段代码 bool check(long long length) { int num = 0; int now = 0; for(int i = 阅读全文
posted @ 2024-05-22 18:37 若把你比作歌 阅读(31) 评论(0) 推荐(0) 编辑
摘要:广度优先搜索 洛谷P2895 可先看我的另一个博客 我们不需要根据时间来模拟,而是可以记录每个点的最早被影响时间,随后再进行搜索 这里写几个坑点: 初始化time数组为-1,不能为0,因为可能陨石在0时刻就降落 陨石先出现,影响了五个点,这五个点可能会被后面的陨石影响 比如,先输入1,1,5 ,(1 阅读全文
posted @ 2024-05-22 18:36 若把你比作歌 阅读(11) 评论(0) 推荐(0) 编辑
摘要:深度优先搜索 洛谷P1605 可先看我的另一个博客 题目简单直接附代码了 #include<bits/stdc++.h> using namespace std; int n, m, t; int x_0, y_0, xfinal, yfinal, ans = 0, flag[10][10] = { 阅读全文
posted @ 2024-05-22 18:35 若把你比作歌 阅读(3) 评论(0) 推荐(0) 编辑
摘要:洛谷 P4387 验证栈序列 AC代码 #include<bits/stdc++.h> using namespace std; int main() { int q; cin >> q; for (int i = 0; i < q; i++) { int n, x; cin >> n; stack 阅读全文
posted @ 2024-05-22 16:45 若把你比作歌 阅读(4) 评论(0) 推荐(0) 编辑
摘要:二分答案 题目详见洛谷P2440木材加工 分享一下自己新学习的二分答案的方法,开始可能有点奇怪为啥这样能做,但其实思路很简单。 起始思路 题目要求我们求最大的分解长度,所以我(们)最开始想的肯定是从大到小(求最大值)枚举答案,看看是否满足,满足不了就加1。 但这样暴力肯定是会超时的,那我们枚举答案的 阅读全文
posted @ 2024-05-22 16:12 若把你比作歌 阅读(28) 评论(0) 推荐(0) 编辑
摘要:深度优先搜索 洛谷P1219 这是一道经典的深度优先搜索问题,深度优先搜索可用以下模板: void dfs(int depth){ if(达到边界){ 记录解 } for(枚举在depth这一深度,能够使用的解){ if(解可行){ 记录解(记录已经被使用) dfs(depth+1) 恢复解(恢复原 阅读全文
posted @ 2024-05-22 16:11 若把你比作歌 阅读(24) 评论(0) 推荐(0) 编辑
摘要:广度优先搜索 洛谷P1443 这里先介绍一下广度优先搜索: 广度优先搜索就是先将第一步可能的步骤全部记录,遍历过后,再将由第一步到达的第二步全部记录并遍历,直到最后全部遍历。 而此题要求我们求得最少步数,广度优先就能够达到最少步数的要求,因为广度优先是先通过搜索所有可能的第n步才进行第n+1步 这里 阅读全文
posted @ 2024-05-22 16:10 若把你比作歌 阅读(46) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示