首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
小红的树
20条解析
开通博客写题解
文和906
发表于 2021-11-04 16:29:30
开始时考虑的是暴力解法。构建树的过程就不说了。这里有一点需要注意,题目中的树并非二叉树,只是一个无环连通图,所以树节点中只能设定保存父节点的指针。在每次统计节点x的子节点中红色节点的个数时,使用一个辅助队列,开始时将x结点入队。进入循环后,查看队头结点是否为红色,然后遍历整棵树的所有结点,当遇到父节
展开全文
摸鱼学大师
发表于 2021-10-27 22:01:30
题目的主要信息: 没有回路的无向连通图,可以看成树,根结点为1 其中一部分结点染成了红色 之后有qqq次询问,每次询问以该结点作为根的子树有多少红色结点 具体做法: 根据输入的父节点,构建树的邻接表。 然后用字符串记录输入的染色信息,再通过dfs构建,对树进行染色,构建dp数组。其中dp[i]d
展开全文
重生之我要当分子
发表于 2024-12-24 23:37:50
解题思路 核心思想: 使用DFS预处理每个节点的子树中红色节点数量 对于每次查询直接返回预处理的结果 实现步骤: 根据父节点数组构建树(邻接表) DFS遍历树,统计每个节点子树中的红色节点数 处理查询 代码 cpp java python #include &l
展开全文
吱吱1111111
发表于 2024-04-26 14:05:20
题目的输入用的节点,目标是遍历节点,所以链表用邻接表(拉链表)存储带缓存的递归循环法性能差别还蛮明显的 #include <iostream> #include <vector> #include <deque> using namespace std; int
展开全文
牛客963150786号
发表于 2021-12-24 12:40:25
dp[i]:以第i个节点为根节点的子树的染色个数。 tree[i]:为第i个节点的父亲节点。 先获取树,然后为需要染色的节点赋值dp[i]=1,最后从第n个节点依次往前逐次把dp[i]增加到dp[tree[i]]上。 dp[tree[i]]+=dp[i]; #include<iostream&
展开全文
ccy201911211837914
发表于 2022-03-08 16:43:02
# include <stdio.h> # include <string.h> # include <limits.h> int max(int a,int b){ return a>b?a:b; } int mai
展开全文
帅气哥哥
发表于 2023-05-13 21:58:08
#include <iostream> using namespace std; struct ChildNode { int child; struct ChildNode *next; }; struct ParentNode { int i;
展开全文
龍眠
发表于 2025-05-02 21:47:02
import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br =
展开全文
脚拿开
发表于 2022-04-10 12:39:10
n = int(input()) parents = list(map(int, input().split())) # 树的表示 tree = [[] for _ in range(n+1)] for i, p in enumerate(parents): i = i + 2 tr
展开全文
一个响亮的名字启动
发表于 2023-03-22 15:52:40
import sys from collections import defaultdict # 后序遍历(所谓树形DP) n = int(input()) sons = defaultdict(list) ps = list(map(int, input().split())) for i in
展开全文
查看本题
查看本题讨论
相关比赛
16323-北京信息科技大学第十三届程序设计竞赛暨ACM选拔赛
进入比赛
20278-北京信息科技大学第十三届程序设计竞赛暨ACM选拔赛(重现赛)
进入比赛
23292-代码能力测试
进入比赛
24839-代码能力测试-白崎专场
进入比赛
25402-长沙师范学院acm倒计时6天
进入比赛
等你来战
查看全部
牛客挑战赛80
报名截止时间:2025-06-27 22:00
第五届上海理工大学程序设计全国挑战赛
报名截止时间:2025-06-28 17:30
牛客周赛 Round 98
报名截止时间:2025-06-29 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题