atcoder 162c game tree

A. Copil Copac Draws Trees

A. Copil Copac Draws Trees 题目大意: 给出一个树边序列,要求你从1号节点建树,对于每条边只有两个端点中有一个绘制了才可以绘制此边 思路: 这题思路不难,但以前写图太少,遍历被卡,给每个边按序列编号,dfs如果该边的编号大于上条边\(ans++\) code: int n; ......
Copil Copac Draws Trees

games101-1 光栅化与光线追踪中的空间变换

在学习了一些games101的课程之后,我还是有点困惑,对于计算机图形学的基础知识,总感觉还是缺乏一些更加全面的认识,幸而最近在做games101的第五次作业时,查询资料找到了scratchpixel这个网站,看了一些文章,终于把脑子里的一团乱麻组织起来了,也就有了这篇关于图形学的第一篇博客。 想要 ......
光栅 光线 games 空间 101

CF1039D You Are Given a Tree

CF1039D You Are Given a Tree 更好的阅读体验 一种神奇套路:对答案根分,根分的依据是链的长度和答案大致是一个成反比的关系。 考虑确定了 \(k\) 怎么做。因为一个点只能在一条链里,所以 dfs 的时候如果能拼成一条链就一定会拼成一条链,不然就把贡献传给父亲继续尝试。 对 ......
1039D Given 1039 Tree Are

AtCoder Beginner Contest(abc) 313

B - Who is Saikyo? 难度: ⭐ 题目大意 选择有n个人, 给出m个强弱关系, 例如a比b强, 这种强弱关系是可以传递的, 如果b比c强, 那么a就b强; 请问这n个人中最强的是谁, 如果根据给出的强弱关系无法确定最强者, 那么就输出-1; 解题思路 我们可以用建树的思想找入度即可, ......
Beginner AtCoder Contest 313 abc

CF1764D Doremy's Pegging Game 组合数学

CF1764D Doremy's Pegging Game 你怎么连简单题也不会? 考虑满足条件当且仅当有连续的n/2向下取整段被删除。 考虑最终状态一定是一次删除联通了两个连续段,然后结束。 我们枚举这个连续段的长度 i 。 最后一个删除的位置有 n/2下取整*2-i 种方案,设另外删除了 j 种 ......
组合数学 Pegging 数学 Doremy 1764D

AtCoder Beginner Contest 326 F

F - Robot Rotation 一句话不开LL,见祖宗 感谢大佬,和洛谷上的题解 上面已经将的很清楚了,但是如果你跟我一样一开始看不懂他们的代码,那么这篇可能为你解惑 点击查看代码 #include <bits/stdc++.h> using namespace std; #define LL ......
Beginner AtCoder Contest 326

k-D Tree小记

k-D Tree 是一种能够 高效处理 \(k\) 维空间信息 的数据结构。 建树 k-D Tree 具有二叉搜索树的形态,二叉搜索树上的每个结点都对应 \(k\) 维空间内的一个点。其每个子树中的点都在一个 \(k\) 维的超长方体内,这个超长方体内的所有点也都在这个子树中。 假设我们已经知道了 ......
小记 Tree k-D

AtCoder Beginner Contest(abc) 312

B - TaK Code 难度: ⭐ 题目大意 题目定义一种矩阵X: 该矩阵的是一个长度为9的由黑白色块组成正方形矩阵; 该矩阵的左上角和右下角都是一个3*3的黑色矩阵(总共18个), 这两个黑色矩阵外面(边缘不算)包围一圈白色色块(总共14个); 现在一个 n * m的黑白矩阵, 问这个大矩阵中有 ......
Beginner AtCoder Contest 312 abc

题解 ABC326E【Revenge of "The Salary of AtCoder Inc."】

根据期望的线性性,总工资的期望等于在每一个 \(i\) 处获得的工资的期望之和,而在 \(i\) 处获得的工资的期望 \(E(i)=A_i\times p(i)\),其中 \(p(i)\) 表示掷骰子掷到 \(i\) 且有效的概率。 初始 \(p(0)=1\),则只有从 \(0\sim i-1\) ......
题解 quot Revenge AtCoder Salary

AT_abc326_e Revenge of "The Salary of AtCoder Inc." 题解

AT_abc326_e Revenge of "The Salary of AtCoder Inc." 题解 一道简单的概率论+动态规划题目(然而我赛时没看这道题 题意 有一个长度为 \(n\) 的序列 \(A\)、一个 \(n\) 面骰子,掷若干次骰子,如果这一次掷骰子的点数小于等于上一次的点数, ......
题解 quot Revenge AtCoder AT_abc

AtCoder Beginner Contest(abc) 311

B - Vacation Together 难度: ⭐ 题目大意 给定n个人的工作计划, 'o'表示这天休息, 'x'表示工作; 请找出一段最长的所有人都休息的连续休息的天数; 解题思路 数据不大, 暴力即可; 神秘代码 #include<bits/stdc++.h> #define int lon ......
Beginner AtCoder Contest 311 abc

CF1891F A Growing Tree

给定一棵以 \(1\) 为根的有根树,支持以下两种操作共 \(q\) 次: 加入一个点; 子树内点权加。 \(q \le 5 \times 10^5\)。 最傻逼的一集,怎么会有这么简单的 d2f。 不难发现每个点存在的时间区间构成时间轴上的一段后缀,于是我们可以将所有操作离线下来,先把完整的树建出 ......
Growing 1891F 1891 Tree CF

CF1891F A Growing Tree

CF1891F A Growing Tree 更好的阅读体验 有点诈骗。好多人都写的 LCT,但是这题其实连树剖都不需要。提供一个简单的单 \(\log\) 小常数做法。 动态加点是假的,可以离线下来得到最后树的结构,记一下 dfn 序。 一个操作对一个点有可能贡献当且仅当操作在加点之后进行。 所以 ......
Growing 1891F 1891 Tree CF

数据结构之树(Huffman tree(赫夫曼树 / 霍夫曼树 / 哈夫曼树 / 最优二叉树))

赫夫曼树概述 HuffmanTree因翻译不同导致其有多个名字:赫夫曼树、霍夫曼树、哈夫曼树 赫夫曼树又称最优二叉树,是一种带权路径长度 最短的二叉树。 所谓树的带权路径长度,就是树中所有的叶结点的权值乘上其到根结点的路径长度(若根结点为0层,叶结点到根结点的路径长度为叶结点的层数)。 树的路径长度 ......
数据结构 Huffman 结构 数据 tree

[CF403E]Two Rooted Trees

Two Rooted Trees 题面翻译 题目描述 你有两棵有根树,每棵树都有 \(n\) 个结点。不妨将这两棵树上的点都用 \(1\) 到 \(n\) 之间的整数编号。每棵树的根结点都是 \(1\)。第一棵树上的边都是蓝色,第二课树上的边都是红色。我们也称第一棵树是蓝色的,第二棵树是红色的。 对 ......
Rooted Trees 403E 403 Two

AtCoder Beginner Contest 321(ABC321)

A. 321-like Checker 直接模拟。 Code B. Cutoff 直接暴力枚举 \([0\sim100]\),每次把第 \(n\) 个数当作当前枚举的 \(i\),然后看看条件是否满足。 Code C. 321-like Searcher Description 给你一个 \(K\) ......
321 Beginner AtCoder Contest ABC

Element Plus el-tree懒加载默认选中

百度上试了很多方法,设置default-expanded-keys不生效,最后使用了下面的方法,亲测有效 const loadNode = async (node: Node, resolve: (data: AreaType[]) => void) => { if (node.level 0) { ......
Element el-tree Plus tree el

Atcoder Beginner Contest 326 (ABC326)

不知道为什么拖到现在,我是摆怪。 A. 2UP3DOWN 模拟,略。 B. 326-like Numbers 模拟,略。 C. Peak 双指针板子。 D. ABC Puzzle 基础 dfs。 但是赛时不知道为什么觉得状态数不会很少,于是写了一个巨大复杂的状压。这里粗略算算有效状态数: 仅考虑每行 ......
326 Beginner Atcoder Contest ABC

CF1889D. Game of Stacks

啊啊啊每次补完题都感觉这题我场上应该是能想出来的啊! 考虑简化问题:若每个栈内只有一个元素,how。 此时我们发现所有栈之间构成了一个内向基环树。且环是没有用的,因为我们在环上走一圈之后仍然会回到原点。所以不妨把所有环边删除,此时每棵树的答案即为树根。 而对于原问题,同理,我们可以考虑不断找环,每找 ......
Stacks 1889 Game CF of

AtCoder Grand Contest 036 D Negative Cycle

洛谷传送门 AtCoder 传送门 没有负环等价于每个点都存在最短路。那么就是要找到一组标号 \(a_i\),使得对于每条 \(u \to v\) 且边权为 \(d\) 的边,都有 \(a_v - a_u \le d\)。 如果我们差分 \(b_i = a_i - a_{i + 1}\),那么每个 ......
Negative AtCoder Contest Grand Cycle

PAT甲级:1174 Left-View of Binary Tree

题目:1174 Left-View of Binary Tree 25分 题解:层次遍历输出每一行最左边的元素。(最开始以为输出部分节点的左子树...想不到思路) using namespace std; #include <iostream> #include <vector> #include ......
甲级 Left-View Binary 1174 Left

AtCoder Beginner Contest 326

A - 2UP3DOWN (abc326 A) 题目大意 100楼层,一次可以上最多两层,或下最多三层。 给定两楼层,问能否一次到达。 解题思路 比较大小,然后判断其差是是不是在\(2\)或 \(3\)内即可。 神奇的代码 #include <bits/stdc++.h> using namespa ......
Beginner AtCoder Contest 326

AtCoder Beginner Contest 326 题解

首先,\(\text{Happy Birthday to me !}\) A - 2UP3DOWN 常规ABCA... //If, one day, I finally manage to make my dreams a reality... //I wonder, will you still ......
题解 Beginner AtCoder Contest 326

【杂题乱写】AtCoder-ARC114

AtCoder-ARC114_A Not coprime \(50\) 内的质数只有 \(15\) 个,可能的答案也就只有 \(2^{15}\) 个,直接枚举。 提交记录:Submission - AtCoder AtCoder-ARC114_B Special Subsets 就是 \(i\) 与 ......
AtCoder-ARC AtCoder ARC 114

CF762F Tree nesting

来一点更清楚的、实现方面的东西。 做法同 这篇,他的实现很优美但略微繁琐了些。 枚举 \(T\) 的形态,发现这个匹配不过是把每个 \(T\) 中当前点的儿子塞进一个 \(S\) 中当前点的儿子内。于是 \(f_{u, v}\) 表示 \(S\) 中 \(u\) 匹配 \(T\) 中 \(v\) 且 ......
nesting 762F Tree 762 CF

AtCoder Beginner Contest(abc) 310

B - Strictly Superior 难度: ⭐ 题目大意 给定n个商品的价格, 每个商品还有若干个属性, 请问是否存在一个商品是另外一个商品的上位品; 上位品的定义分两种, 一是价格相同, 但是商品A的属性不仅包括了商品B的属性, 还比商品B多了至少一个属性; 二是如果两商品的属性相同, 但 ......
Beginner AtCoder Contest 310 abc

CF375E Red and Black Tree

看错题看成只能交换相邻节点颜色了/fn 每次操作交换两个节点颜色,可以转化为统计最终合法颜色序列相比开始,最少有多少个红点变成黑点。 可以考虑一个类似树形 dp 的过程,对于每个节点我们钦定下它会被哪个节点“笼罩”,同时由于黑点数量有限,我们还需要记录下子树内已经用了多少个黑点。 设“笼罩”节点 \ ......
Black 375E Tree 375 Red

AtCoder Beginner Contest 325

感觉错失了上分机会 A - Takahashi san (abc325 A) 题目大意 给定姓和名,输出尊称,即姓+san。 解题思路 按照题意模拟即可。 神奇的代码 #include <bits/stdc++.h> using namespace std; using LL = long long ......
Beginner AtCoder Contest 325

2D物理引擎 Box2D for javascript Games 第六章 关节和马达

2D物理引擎 Box2D for javascript Games 第六章 关节和马达 关节和马达 到现在你所见到的所有类型的刚体有着一些共同点:它们都是自由的并且在除碰撞的请款之外,彼此没有依赖。 有时你可能想要刚体之间进行约束。 如果你试想一下粉碎城堡(Crush the Castle)这款游戏 ......
马达 关节 javascript 物理 引擎

AtCoder Beginner Contest 216 H Random Robots

洛谷传送门 AtCoder 传送门 下文令 \(n\) 为原题中的 \(K\),\(m\) 为原题中的 \(N\)。 首先概率转方案数,最后除 \(2^{nm}\) 即可。 考虑一个指数级暴力:枚举每个 bot 的终点 \(y_i\)(因为存在不能相交的限制,需要满足 \(y_1 < y_2 < \ ......
Beginner AtCoder Contest Random Robots