题目:https://www.luogu.org/problemnew/show/P4546 先写了个55分的部分分,直接用LCT维护即可,在洛谷上拿了60分: 注意各处 pushup,而且 splay 维护的是一条链但其形态不一定是一条链! #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> using namespa…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=5020 https://www.luogu.org/problemnew/show/P4546 如果保证 x=1 ,则可以用 LCT 维护每个点的函数值.不然的话就用 LCT 拿出那条链,dfs 一下 splay 现算.可以得 60 分. #include<cstdio> #include<cstring> #include<algorithm> #include&…
首先发现有连边和删边的操作,所以我们肯定要用\(LCT\)来进行维护. 接下来考虑如何进行\(LCT\)上的信息合并. \(f=1\),则函数为\(f(x)=sin(ax+b)\) \(f=2\),则函数为\(f(x)=e^{ax+b}\) \(f=3\),则函数为\(f(x)=ax+b\) 这道题中的信息为这三个函数,因为\(sin(ax+b)\)和\(e^{ax+b}\)不好处理,所以用泰勒展开都其处理为多项式的形式,再进行多项式的合并即可. 泰勒公式: \[f(x)=\sum_{i=0}^…
咕咕咕?咕咕咕! 题意: Description 数字和数学规律主宰着这个世界. 机器的运转, 生命的消长, 宇宙的进程, 这些神秘而又美妙的过程无不可以用数学的语言展现出来. 这印证了一句古老的名言: “学好数理化,走遍天下都不怕.” 学渣小R被大学的数学课程虐得生活不能自理,微积分的成绩曾是他在教室里上的课的最低分.然而他的某位陈姓室友却能轻松地在数学考试中得到满分.为了提升自己的数学课成绩,有一天晚上(在他睡觉的时候),他来到了数学王国. 数学王国中,每个人的智商可以用一个属于 [0,1]…
Description 数字和数学规律主宰着这个世界.   机器的运转,   生命的消长,   宇宙的进程,   这些神秘而又美妙的过程无不可以用数学的语言展现出来.   这印证了一句古老的名言:   “学好数理化,走遍天下都不怕.”   学渣小R被大学的数学课程虐得生活不能自理,微积分的成绩曾是他在教室里上的课的最低分.然而他的某位陈姓室友却能轻松地在数学考试中得到满分.为了提升自己的数学课成绩,有一天晚上(在他睡觉的时候),他来到了数学王国.   数学王国中,每个人的智商可以用一个属于 [0…
题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=5020 https://loj.ac/problem/2289 题解 这个 appear 和 disappear 操作显然是强行加上去用力啊增加代码长度的. 所以相当于就是什么东西套个 LCT 就行了. 所以考虑怎么快速求出一堆东西的分值和. \(sin, exp\),一次函数之间的加法似乎并没有什么优美的性质,所以我们考虑泰勒展开. \[ e^v = \sum_{i=0}^{\infty}…
题目大意: 传送门 给一个动态树,每个节点上维护一个函数为$f(x)=sin(ax+b)$.$f(x)=e^{ax+b}$.$f(x)=ax+b$中的一个. 支持删边连边,修改节点上函数的操作. 每次询问$u$到$v$路径上所有函数带入$x$值的和. 题解: 给了个泰勒公式 (粘贴自百度) 不过……要是会导数这题也应该知道……不会导数给了也是白给……不知道出题人怎么想的…… 话说直接给麦克劳林展开+导数不好吗…… 因为$f(x)=e^x$的导数$f'(x)=e^x$所有当取$x_0=0$时就有其…
题目大意 给你一棵树,每个点有一个函数\(f(x)\) 正弦函数 \(\sin(ax+b) (a\in[0,1],b\in[0,\pi],a+b\in[0,\pi])\) 指数函数 \(e^{ax+b} (a\in[−1,1],b\in[−2,0],a+b\in[−2,0])\) 一次函数 \(ax+b (a\in[−1,1],b\in[0,1],a+b\in[0,1])\) 还有一些操作: 操作1:连接两个点(保证连接完后还是森林) 操作2:断开两个点之间的边 操作3:修改某一个点的函数 操作…
题面 LOJ传送门 思路 这里很重要 它提示我们,把给定的三个函数泰勒展开,并用LCT维护每一项泰勒展开式的值,维护十几项就满足了题目的精度要求 我们考虑一个函数在0位置的泰勒展开 $f(x)=\sum_{i=0}^{\infty} \frac{x^i f^{(i)}(0)}{i!}$ 发现后面式子里面的$\frac{x^i}{x!}$可以留到询问时候处理,我们只需要维护$\sum_{i=0}^{\infty} f^{(i)}(0)$即可 对于$f(x)=sin(ax+b)$,其导函数如下: $…
p.s. 复合函数求导时千万不能先带值,再求导. 一定要先将符合函数按照求导的规则展开,再带值. 设 $f(x)=g(h(x))$,则对 $f(x)$ 求导: $f'(x)=h'(x)g'(h(x))$ 此题中,我们用 LCT 维护 $x^{i}$ 前的系数和,每次询问时将一条链的系数和提出,将 $x$ 带入其前 15 项即可. Code: #include<bits/stdc++.h> using namespace std; #define maxn 500000 #define M 17…