Codeforces Round #551 (Div. 2)D. Serval and Rooted Tree (树形dp 思维)

基于AIS动态数据与AI结合得经纬度标示算法 港口船舶智能标注系统 本系统通过结合摄像头视频流和AIS船舶动态数据,利用AI技术实现船舶实时标注功能。系统架构包括视频流处理、AIS数据解析、船舶检测匹配和坐标映射转换等模块。关键技术步骤: AIS数据获取:通过本地接收机或网络API获取船舶位置、航速等信息 AI目标检测:采用YOLOv8等模型识别视频中的船舶 船舶匹配算法:通过位置投影或运动轨迹匹配视频目标与AIS数据 坐标映射:使用相机标定技术将经纬度转换为图像坐标 实时标注:在视频画面上叠加船名、位置等关键信息 应用场景包括港口监控、智能海事管理和 阅读详情

题目链接

题意:

给你一颗以 1 为根的树,树的形状确定,每个节点有一个类型 0 或 1,0 代表该点的权值取其儿子中权值最小的那一个,1 则反之。所有的叶子节点权值为 1 - m(m为叶子节点数量),但是并不知道每个叶子节点的具体权值。最后要求出根(即节点1)的权值最大可能是多少。

题解:

由于叶子节点的权值是不确定的,所以按照普通的递推是行不通的,那么我们可以按照 该节点最大可以排第几 来递推,也就是 dp[i] 表示 i 节点在 1 - m 中可以排第 dp[i] 位。那么可以得出,如果该点的类型为 1 ,则 dp[i] 就等于 i 点的儿子中大小排名最靠前的那个,也就是 dp[son] 最小的那个;若该点类型为 0 ,则 dp[i] 就等于 i 点的所有儿子的 dp 之和(由于叶子节点的权值都不相同,所以排名是所有的儿子累加。例如:假设一个点只有两个儿子,左儿子最前能排在第三位,右儿子最前能排在第四位,由于该点的权值必须取儿子中最小的那个,所以排名最前只能排在 3 + 4 = 7 位)。

代码:

#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <iostream>
#include <string>
#include <queue>
#include <stack>
#include <vector>
#include <map>
#include <set>
#include <bitset>
using namespace std;

typedef long long ll;
#define int ll
#define INF 0x3f3f3f3f3f3f3f3f
#define MAXM 200000 + 10
#define MAXN 300000 + 10
const ll mod = 1e9 + 7;
#define P pair<int, int>
#define fir first
#define sec second

int n;
int kd[MAXN], num;
vector<int> G[MAXN];
int dp[MAXN];

void dfs(int now)
{
    if(!G[now].size()) {
        dp[now] = 1;
        num ++;
        return ;
    }

    int temp = kd[now] ? INF : 0;
    for(int i = 0; i < G[now].size(); i ++) {
        dfs(G[now][i]);
        temp = kd[now] ? min(temp, dp[G[now][i]]) : temp + dp[G[now][i]];
    }
    dp[now] = temp;
}

signed main()
{
    cin >> n;
    for(int i = 1; i <= n; i ++) cin >> kd[i];
    for(int i = 2; i <= n; i ++) {
        int fa; cin >> fa;
        G[fa].push_back(i);
    }

    dfs(1);
    
    cout << num - dp[1] + 1 << endl;
}

/*

The WAM is F**KING interesting .

*/

 

FFmpeg + Qt 实现摄像头采集与 MP3 背景音乐 RTSP 推流 在直播或视频监控场景中,我们经常需要将摄像头画面与背景音乐混合后推送到 RTSP 服务器。本文将详细介绍如何使用Qt框架结合摄像头实时采集(Windows 下使用dshow,Linux 使用v4l2视频预览(显示为 QImage)视频 H.264 编码 + RTSP 推流从 MP3 文件读取音频,重采样为 AAC 编码并推流循环播放音频文件解决中文文件路径打开失败的问题文章将剖析每个技术环节的关键代码,并给出完整的类实现。 阅读详情

相关推荐

嵌入式学习之QT学习---14 QT跨平台运行之把QT程序交叉编译到ARM开发板

想要把qt工程放到开发板上运行,就需要用到交叉编译。由于qt是跨平台的,所以只需要换个编译器编译一下就可以。 以“定时器”的例子为例,在移植之前还需要进行一个准备工作,在windows下运行的时候,电脑屏幕很大,但是运行的窗口只有一点点大,开发板也有外接屏幕,如何让运行窗口自动适配开发板的外接屏幕呢?令其占满屏幕显示,而不是一小块。 第一步:需要设置一下,先给ui布局,如果不布局,控件就不会随着屏幕的大小的变化而变化。 第二步:利用代码来获取屏幕的大小,给widget.cpp文件下添加如下代码 #inclu

qq_42822743的博客 5457

【Codeforces Round #551 (Div. 2) D.Serval and Rooted Tree】树形DP

链接 Codeforces Round #551 (Div. 2) D.Serval and Rooted Tree 题意 给你一棵树,每个点上有一个flag,如果flag=0,表示这个点的权值是所有子节点权值中的最小值。如果flag=1,表示这个点的权值是所有子节点权值中的最大值。如果一共有k个子节点,我们可以给每一个子节点安排一个1-k中的权值,但是每个权值只能使用一次,现在想知道根节点权值...

lajiyuan的博客 364

雷达杂波的基础知识

例如工作在海上的机载雷达,航行在海上的船用雷达,它们都不想要海杂波,会影响它们对小目标的检测,从而以为“漏掉”海面飞行的巡航导弹而被击毁。海杂波的反射系数是非常复杂的,影响的因素很多,除了和雷达参数有关,显然还和海况息息相关,经验模型经常将反射系数表示成海况的函数,在不同条件和不同模型的情况下,反射系数的值不同。说到“杂波”,你可能想到的就是如何去抑制它,去减少它在雷达回波中的分量,在很多情况是这样的。云雨的反射对飞机雷达来说是不希望的,但确是气象雷达所利用的,可以用来测量降雨率,提升天气预报的准确性。

qq_43416206的博客 2133

【 Codeforces Round #551 (Div. 2) D】Serval and Rooted Tree【树形DP】

题意: 给定一棵nnn个节点的树,每个点有一个标志fff,f=1f = 1f=1表示该节点权值等于子节点中权值最大值,f=0f=0f=0表示该节点权值等于子节点权值中权值最小值。假如这棵树中有kkk个叶子节点,则可以对这kkk个叶子节点进行赋值,分别为1−k1-k1−k,不得重复。问根节点权值的最大值为多少。 思路: 这貌似是一个典型的树形DP问题,但是比赛的时候我还是没做出来,菜哭… 本题最直...

lucius-liu.cn 367

科研效率革命:Zotero与Web of Science联动实现千篇文献一键获取

本文详细介绍了如何利用Zotero与Web of Science联动实现科研文献的高效管理,包括批量导入、智能下载和自动整理千篇文献的技巧。通过精准检索、RIS文件导出和Zotero插件设置,科研人员可以大幅提升文献获取和管理的效率,特别适合开题报告和综述写作等场景。

weixin_29219539的博客 253

金现代面试题—— i++,++i, &&,&|自动装箱和自动拆箱(int,byte,float等)|取int等基本类型的最大值

public static void main(String[] args){ int i=1,j=1; if(i++==2&amp;amp;amp;amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp;amp;amp;amp;++j==2){ i=7; } System.out.println(“i=”+i+”,j=”+j); } 请给出 输出结果:

老孟嘚吧嘚 1396

【Codeforces Round #551(Div. 2)】Serval and Rooted Tree(思维+dp)

题目链接 D. Serval and Rooted Tree time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Now Serval is a junior high school student in Jap...

よろしくお願いします 302

zabbix 监控EMC存储

经过搜索,找到了脚本地址,该项目应该是模板原作者创建的,该项目也有zabbix模板,和上面的应该是相同的,我用的是上面的模板。./unity_get_state.py --api_ip='X.X.X.X' --api_port='443' --api_user='zabbix' --api_password='PASSWORD' --storage_name="zabbix web前端配置的主机名" --discovery。修改权限,给zabbix用户执行权限,模板调用时以zabbix用户执行。

wangyfde的专栏 3755

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (树形dp)

题目链接 题意:给你一个有根树,假设有k个叶子节点,你可以给每个叶子节点编个号,要求编号不重复且在1-k以内。然后根据节点的max,minmax,minmax,min信息更新节点的值,要求根节点的值最大。 解法:考虑树形dp,若当前节点是nownownow,我们可以假设编号最大的一些数分布在当前节点的子节点中,显然,若当前节点为叶子节点,那么这个这个编号就是最大的。然后往上回溯,假设当前节点取得是...

pubgoso的博客 193

第一部分:VTK基础入门(第1章:VTK简介与概述)

VTK简介与核心特性概述 VTK(Visualization Toolkit)是一个开源的跨平台C++类库,专用于3D计算机图形学、图像处理和科学可视化。由Kitware公司开发,VTK自1993年起源以来,经历了开源化、成熟化和现代化多个发展阶段,现已成为科学可视化的核心工具之一。 VTK的核心特性包括: 管道架构:模块化设计实现数据流管理 丰富的数据支持:处理多边形数据、图像数据等 强大的渲染能力:集成OpenGL,支持多种渲染技术 最新版本VTK 9.4.2增强了现代C++支持,优化了内存管理,并提升

仰望星空的博客 2359

02 - GRACE数据处理步骤简叙

本篇对GRACE数据处理的过程进行了介绍,简单叙述了进行数据各种改正的原因,可以帮助理解GRACE数据处理理论,本文借鉴了多篇优秀博士论文。希望可以对👪有所帮助。

weixin_43339605的博客 3346

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (树形dp)

https://codeforces.com/contest/1153/problem/D 思路: 用dp[i]表示,结点i最少要有dp[i]个最大的结点肯定被忽略掉(因为题目要求最大化,因此我们希望被忽略掉的最大点尽可能少,所以dp表示的是“最少”的个数)。那么对于整个树,根节点的dp[1]即为整颗树最少要丢弃的结点个数,因此最终答案为k-dp[1]+1(因为我们要选中一个答案,所以少丢弃一个...

Eason的博客 465

基于双目视觉的行车中障碍距离检测方法研究与目标跟踪

本文将介绍基于Python语言的双目视觉技术,以及如何使用该技术检测行车中的障碍物并跟踪目标。双目视觉利用两个摄像头模拟人眼的立体视觉,通过对两个摄像头所捕捉的图像进行比较和分析,可以得到物体的深度信息。首先,我们需要安装Python的OpenCV库,该库提供了丰富的图像处理和计算机视觉功能。接下来,我们进入一个循环中,不断读取左右图像,并将其转换为灰度图像。在视差图上,您可以实现目标检测和跟踪算法来识别和跟踪行车中的障碍物。请注意,上述代码只是一个简单示例,您可以根据具体需求和算法进行修改和扩展。

ZgnObjectivec的博客 276

Codeforces Round #551 (Div. 2)D D. Serval and Rooted Tree(树形DP+贪心)*

题目链接:http://codeforces.com/problemset/problem/1153/D 题目大意 给定一颗树结构,每个节点上设置了 max和min标志,意味着该节点的值取其son的最大/最小值, 而叶节点上的数取值为1到叶节点总个数并且各不相同. 要求根节点值最大是多少. 题目分析 思考dp值,那么毫无疑问dp转移关系核心在min和max 函数之间,考虑到...

满月照亮的路 198

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (思维 + dp)

传送门:https://codeforces.com/contest/1153/problem/D D. Serval and Rooted Tree time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Now ...

Amo丶 330

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree 树形dp

D. Serval and Rooted Tree 题意:含有nnn个节点,并且以111为根节点的树的每个节点都有一个操作,用010101表示,如果为111,那么就取这个节点的孩子中的最大值,否则取孩子的最小值。问,如何安排可以使得根节点111的值最大。注意如果叶节点有kkk个,那么取值必须是1→k1\rightarrow k1→k。 题解:如果去枚举叶子节点的取值肯定是不可以的了,复杂度过于高,...

Eternally831143的博客 340

Codeforces Round #551 (Div. 2) Serval and Rooted Tree(树形DP)

题目链接:https://codeforces.com/contest/1153/problem/D 题目大意:给出n个点,说明每个点的属性,1就是取儿子中最大的值,0就是取最小的值,分配给每个叶子节点1~k(假设有k个叶子,每个叶子的权值不同),问1的值最大是多少 题目思路:顺着想想不出来,可以换个思路,用dp[k]存是第k大,如果是叶子那就是第1大,到了上面以后,如果是max,...

smilestruggler_Fly To Higher 215

Codeforces Round #551 (Div. 2) Serval and Rooted Tree

Serval and Rooted Tree 传送门 题目描述: Now Serval is a junior high school student in Japari Middle School, and he is still thrilled on math as before. As a talented boy in mathematics, he likes to play with...

weixin_43899002的博客 187

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree(树形dp)

题目 给定一棵n(n<=3e5)的节点的有根树, 每个节点上有一个op值, op=0代表该点的值取子树中的min值, op=1代表该点的值取子树中的max值, 不妨设树有k个叶子,可以将1到k共k个不重复的值填到叶子中, 使得最后根节点的值最大,输出最大值 思路来源 https://www.cnblogs.com/FrankChen831X/p/10706038.html ...

小衣同学的博客 274

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (树形dp)

题目:http://codeforces.com/contest/1153/problem/D 题意:给你一棵树,每个节点有一个操作,0代表取子节点中最小的那个值,1代表取子节点中最大的值,叶子节点的话就是自己置一个值,有k个子节点,那么每个子节点的值范围 就是1-k,1-k只能用一次 思路:贪心不好取,我肯定是要排列完才知道当前的值是哪个,但是我可以知道当前节点应该是取子节点中排名第几的那...

weixin_30748995的博客 129

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree(dp)

D. Serval and Rooted Tree time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Now Serval is a junior high school student in Japari Middle School, ...

城南的花 194

Codeforces Round #551 (Div. 2) :D Serval and Rooted Tree(贪心 + 树形dp)

题目大意:给出一棵树,1号结点为根节点,设该树有k个叶子结点,叶子结点的值可以任意赋值,但必须用[1,k]范围内的数,且每个数只能用一次,除此之外每个结点还有一个权值,权值1代表该结点的值为儿子结点中权值最大的一个值,权值0表示该点的值为儿子结点中最小的值。现在问根节点的最大值是多少? 解法:问题可以转变为,至少要设置多少个叶子结点的值才能使得根节点有值?(看到这句话是否恍然大悟?)若放x个叶子结...

qq_41997978的博客 203

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree(树形DP)(好题*)

题目链接 题意:n个节点的树,叶子可以任意分别给1~k(k为叶子个数)的值,每个节点有操作min,max分别取其子树的最小和最大的值; 问根节点1最大多少; 思路:这个题不看题解根本不会往这方面想,这个思路很清奇,dp【u】代表u这个节点在它的叶子节点中排第几大,我们先来一种最简单的情况,dp【2】=3,dp【3】=4,总数是10,2和3的父亲是1,假如1取min的话,dp【1】=dp【2】+...

qq_42479630的博客 139

Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree(树形dp)

题目链接:http://codeforces.com/contest/1153/problem/D 题目思路: 对于一个结点,计算他的子树(包含他),他最少排第几名。 怎么转移呢?? 对于叶子节点在他的子树中肯定排名第一,所以dp【叶子】 = 1 ;对于上边的x结点,如果是max标记,那么我要取他儿子中排名最小的那个,他可以选择排在最前边...

qq_41645482的博客 153

洛谷 P2765 魔术球问题 (网络流 + 思维)

题目链接 题意: 给你 n 根柱子,需要往上放小球,小球的编号从 1 开始(1,2,3 ...),要使得每两个相邻的球之和为平方数(4, 9, 16 ...),问最多可以放多少个小球。 题解: 从 1 开始,一个一个地加入小球,每个小球分为两个点,一个点由源点流向它,容量为 1 ,另一个点由它流向汇点,容量也为 1 。那么每次加入一个点,如果能够和之前加入的数构成平方数,则将这个数的第一个...

ttoobne 2755

Codeforces Gym - 101982C (dp)

题目链接 题意: 给 n 个数,求出 选 k 个不同的数有几种选择方法, 结果对998244353取模。 题解: dp[i][j] 存的是 i 种数中选 j 个数的情况种数。预先处理出有几种数并且每种数有几个。 那么 i种数中选 j 个数的情况数量可以由第 i 种数选或者不选推得。 即 dp[i][j] = dp[i-1][j] + dp[i-1][j-1] * num[i]。(n...

ttoobne 673

POJ1742 Coins (可行性背包)

题目链接 题解: 看到面试题和这个很像,好像是挺经典的一个问题,定义一个 sum 数组代表第 i 枚硬币在达到硬币总数为j 的时候使用了几枚,然后就可以控制硬币的使用次数了。 代码: #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned long long ...

ttoobne 434
上一篇: 洛谷P2158 [SDOI2008]仪仗队 (线性筛欧拉函数求前缀和)
下一篇: Codeforces Gym - 101808K(倍增LCA最近公共祖先)
ttoobne
博客等级 码龄9年 13粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值