题面

貌似这道题暴力加玄学优化就可以AC?

下面是正解:

1.树链剖分:

   我们在u到v之间都放一个糖果,可以将松鼠它家u到v的糖果数都加1。每一次将a[i]到a[i+1] (a数组是访问顺序)的节点加1,可以用树链剖分来维护。查询只需要查每个点的权值就可以了。(貌似该题比树剖板子还板子?)

2.树上查分:重点来了!(敲黑板!!!)

  本题的题意便是统计一条路径上所有点的经过次数。

   已知原数组a[i]表示每个点的点权,设差分数组s[i]=a[i]-sum(a[j])(j为i的每个直接相连的儿子);

      叶子节点的b[i]恰好为该点点权a[i];

   对于任意一个节点k,a[k]=以k为根节点的子树中所有s[i]之和。

   设差分数组s[],对于每次操作,

    s[u]++;

    s[v]++;

    s[LCA(u,v)]--;

    s[fa[LCA(u,v)]]--;

      这是点权的情况,如果是边权,只需要把一个点到父亲的边权赋给自己当作点权,

      然后当作点权的情况做就好了,细节需要处理一下。

   

转载于:https://www.cnblogs.com/kamimxr/p/11279041.html

洛谷 P3258 松鼠的新家 题解相关推荐

  1. 洛谷P3258松鼠的新家

    题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在"树"上.松 ...

  2. 洛谷3258 松鼠的新家

    题目大意 按给定顺序遍历一棵n个节点的树,求每个节点经过的次数.(2≤n≤3×1052\le n \le3\times10^52≤n≤3×105) 知识储备 树上差分: 首先回顾差分.差分就是将区间的 ...

  3. P3258 [JLOI2014] 松鼠的新家 题解

    P3258 [JLOI2014] 松鼠的新家 题解 洛谷 P3258 题目 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有 nnn 个房间,并且有 nnn−1 根树枝连接,每个房间都可以相互到达,且 ...

  4. 洛谷 P3258 [JLOI2014]松鼠的新家 树上差分

    缘起 [1]中我们学习了树上差分,并且a了一个裸的点差分. 现在继续树上差分~ 洛谷 P3258 [JLOI2014]松鼠的新家 分析 题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房 ...

  5. 洛谷 P3258 [JLOI2014]松鼠的新家 解题报告

    P3258 [JLOI2014]松鼠的新家 题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他 ...

  6. 洛谷 P3258 [JLOI2014]松鼠的新家

    题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在"树"上. ...

  7. [JLOI2014]松鼠的新家 洛谷P3258

    题目链接 题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在"树&quo ...

  8. 洛谷P3258 [JLOI2014]松鼠的新家

    题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在"树"上. ...

  9. P3258 [JLOI2014]松鼠的新家

    文章目录 题意: 题解: 树上差分 代码: 树链剖分 代码: P3258 [JLOI2014]松鼠的新家 题意: n个点,n-1条边,给出每个点的拜访顺序,问每个点经过几次(最后一次移动不算拜访) 题 ...

最新文章

  1. 超详细教你10分钟搭建一个高端的B2B2C模式的综合性商城|含来客推V3源码下载
  2. java关键字--static--应用场景、特点和注意事项
  3. CSS3属性之text-overflow:ellipsis,指定多行文本中任意一行显示...
  4. vue2.0 练习项目-外卖APP(2)
  5. 泛娱乐迎来善变的95后Z世代 技术从拐杖变为核心引擎
  6. 开源GIS库GDAL/GEOS在Windows下的编译与 Codeblocks配置
  7. [Python]使用 lambda 函数
  8. Machine Learning——octave矩阵操作(2)——DAY3
  9. 快速特征点直方图描述器(FPFH)
  10. 编程语言_Java方法参数...是什么意思_面试题008
  11. 链表根据主元切分成3段
  12. Android仿人人客户端(v5.7.1)——Auth授权认证(整理流程,重构代码)
  13. php中获取memcache所有key,Memcache查看列出所有key方法及memkeys实时查看key使用情况...
  14. 软件设计师(中级)历年真题与知识点总结(更新中...)
  15. 超市条码扫描枪使用前如何进行参数设置
  16. C++派生类与继承(超详细)
  17. WGS84转GCj02
  18. 自动化测试工程师,自动化测试项目老是误报?怎么解决?(详细总结)
  19. [编程实例]360漏洞修复(绿色版)制作器 v1.0
  20. Frequent Pattern Mining(频繁模式挖掘) - Aprior挖掘算法

热门文章

  1. GIS BigBook1 —— 《地理信息系统与科学》
  2. 基于STM32F103的家庭火灾报警及灭火系统(初步)
  3. 滤了asa,cer,cdx,php,aspx等脚本类型的上传情况下添加一个ashx的上传类型
  4. C++格式化输入输出控制----iomanip
  5. 关于定制开发ERP的哪些事,5分钟看懂ERP定制开发关键节点
  6. 学人工智能需要哪些准备?AI基础技能
  7. Chinese Fear More Historic Destruction
  8. 西南大学计算机科学与技术专业在哪个校区,西南大学有几个校区及校区地址 哪个校区最好...
  9. Python_Task05:字典、集合和序列
  10. [leetcode javascript]周赛155:5197. 最小绝对差(没有做完