D-生活在树上 SDU2020个人排位赛#3
D-生活在树上 SDU2020个人排位赛#3
D. 生活在树上
https://codeforces.com/gym/323026/problem/D
很遗憾,在宿舍使用电饼铛是违规的,zdx并没能成功烙好饼。事实上,他一打开开关,整层楼的电闸都跳了,尽管他已经把线接在了空调专用插口上。zdx需要恢复宿舍的供电,宿舍的结构可以看成一棵有根树,有n个节点,编号从0到n−1,其中0号点是根节点。每个节点有一个数值,zdx每次行动会指定一个点,然后把这个点到根节点的路径上所有节点的数值都+1或者−1。直到所有节点的数值都变为0,宿舍的供电才会恢复。那么,zdx至少要行动多少次
Input
第一行一个整数n,1≤n≤100000,代表节点个数
接下来的第i行(1≤i≤n),每行一个整数,代表第i个节点的父节点
最后一行有n个整数,第i个数|ai|≤100000,代表第i个节点初始数值
保证输入是有效的树
Output
输出一个整数,代表zdx最少的行动次数
Example
inputCopy
3
0
0
2 1 3
outputCopy
6
用带lazy标记的dfs(可能会有点像懒惰标记线段树的思想)。
当前节点数值a加上lazy就是该点子树全部归0后,该点的数值。
#include<bits/stdc++.h>
using namespace std;
vector <int> v[100100];
long long ans=0;
long long a[100100];
long long lazy[100100];
int fa[100100];
void dfs(int n)
{if(v[n].size()>0){for(auto i:v[n]){dfs(i);}}a[n]+=lazy[n];ans+=abs(a[n]);lazy[fa[n]]+=-a[n]+lazy[n];//这里一定要记得+lazy[n]!!!不然下面的修改传不上去
}
int main()
{int tmp,n;cin>>n;for(int i=1;i<n;i++){cin>>tmp;v[tmp].push_back(i);fa[i]=tmp;}for(int i=0;i<n;i++){cin>>a[i];}dfs(0);cout<<ans;return 0;
}
D-生活在树上 SDU2020个人排位赛#3相关推荐
- 《树上的男爵》坚持解释不清的理想是疏离,还是自由?
<树上的男爵>坚持解释不清的理想是疏离,还是自由? 伊塔洛·卡尔维诺,意大利作家,后现代主义派. 卡尔维诺为"寓言式奇幻文学的大师".(评论家赫伯特·密特甘评) 吴正仪 ...
- 高考满分作文生成器来了!分分钟批量完成「生活在XX上」,哲学文学物理各种领域任选...
金磊 贾浩楠 发自 凹非寺 量子位 报道 | 公众号 QbitAI 如何才能写出一篇浙江省高考满分作文? 就在最近,浙江省作文阅卷大组组长钦点的满分作文火了: 但也备受争议--嚆矢.滥觞.祓魅.婞直. ...
- 高考满分作文生成器来了!分分钟批量完成「生活在XX上」,哲学文学物理各种领域任选......
点击上方"五分钟学算法",选择"星标"公众号 重磅干货,第一时间送达 来自:量子位 如何才能写出一篇浙江省高考满分作文? 就在最近,浙江省作文阅卷大组组长钦点的 ...
- 第四届“传智杯”全国大学生IT技能大赛(决赛B组)【题解】
感觉都是暴力题或者类似原题,就是手速场. 目录 A. 小智的疑惑 B. 三元组 C. 排排队 D. 背单词的小智 F1. 生活在树上(easy version) A. 小智的疑惑 比赛的时候写的KMP ...
- 会写高考作文的AI,内含17亿参数、2亿数据、1万行代码
点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:学术头条 AI博士笔记系列推荐 周志华<机器学习> ...
- 【API进阶之路】破圈,用一个API代替10人内容团队
自从学习API以后,我用技术手段相继帮助业务部.市场部解决了不少难题,算是从纯研发破圈发展到了业务端.老板召开业务讨论会的时候也会带上我,希望我能从技术角度帮助公司解决业务问题,提升业务的效率和业绩. ...
- 中下游大学毕业如何在大城市和各种985大学生厮杀?
戳蓝字关注「中产之路」 智慧往往跟阅历经验相关,回到5年前,10年前的决策档口,同样一件事,我们大概率能做出更好的选择,同一把牌打出更好的效果. 杭哥您好!我最近很是困惑,需要你帮忙指点一二,在此谢 ...
- 写不出满分作文怎么办,GPT-3 来帮你
作者 | 马超 责编 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 今日,浙江高考满分作文<生活在树上>突然火爆全网,由于这篇文章晦涩难懂,最初评分的老师先给出 39分,但经阅 ...
- 给1078万考生批卷的,可能不是个人
又一年高考开始了,4000余万份高考试卷成绩,还有背后1078万考生的命运,都在各位阅卷组老师手中. 自1978年恢复高考,至今已有43年,高考阅卷抛弃了上世纪传统的手改手核的方式,换上电脑开始无纸化 ...
最新文章
- pytest+allure框架搭建(MacOS)
- etc/ld.so.conf的使用说明
- 【转】!Dynamics 365 Online通过OAuth 2 Client Credential授权(Server-to-Server Authentication)后调用Web API
- php文件夹下所有视频播放,PHP使用glob方法遍历文件夹下所有文件
- 圆形缓冲区(循环buffer)实现
- 什么命令能把Linux搞死机,Linux常见死机原因
- 卢伟冰:越是入门机 越应该把使用体验做好
- 晨哥真有料丨为什么越优秀的女生越寡?
- Atitit java 原生 客户端 native desktop桌面 javafx 浏览器环境 导入jar jfxrt.jar 17M package com.attilax.ui;
- 4选1数据选择器 testbench代码编写
- 手把手教你使用EndNote X8 详细笔记
- 教师录微课及剪辑软件推荐
- java实现 蓝桥杯 算法提高 盾神与条状项链
- 网络爬虫法即将出台!!!小爬怡情,大爬over
- Python量化交易平台开发教程系列4-事件驱动引擎原理和使用
- Windows7 UAC 实验
- mac 软件卸载后无法安装
- Unable to access jar file xxx.jar
- RoboCup2d学习——WorldModel
- 计算机能力[置顶] 论计算机专业毕业生的人文素养
热门文章
- Java互联网架构-Mysql分库分表订单生成系统实战分析
- X Desktop Group(扩展窗口管理器提示)
- R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、获取欧元兑美元汇率数据、每次请求只能获取500天以内的数据、多了会报错
- 算法作业1:倒水问题——三壶谜题
- 把有时分秒的时间字符串转换为数字的时间戳的方法。
- 嵌入式Linux的RGB触摸屏幕驱动记录
- win10卸载photoshop cs6残留ADMUI3.fon字体文件删不掉
- Excel中的数据太多单个excel放不下
- JS实现-DIV自动居中代码
- 华为设备配置灵活QinQ