CF - 1676 - G White-Black Balanced Subtrees

embedded/2024/10/21 9:44:37/

White-Black Balanced Subtrees - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 

#include <bits/stdc++.h>
using namespace std;
int t;
int n;
vector<int> gv[4005];
string s;
int tot;
int dp(int x){int val;if(s[x]=='B'){val=1;}else if(s[x]=='W'){val=-1;}if(gv[x].empty()){//叶子结点return val;}for(int i=0;i<gv[x].size();i++){val+=dp(gv[x][i]);}if(val==0){tot++;}return val;
}
void init(){memset(gv,0,sizeof(gv));s="\0";n=0;tot=0;
}
int main(){cin>>t;while(t--){cin>>n;int v;for(int i=2;i<=n;i++){cin>>v;gv[v].push_back(i);}cin>>s;s="#"+s;//下标从 1 开始dp(1);cout<<tot<<endl;init();}return 0;
}


http://www.ppmy.cn/embedded/56075.html

相关文章

【乐吾乐2D可视化组态编辑器】文件

1 文件 文件&#xff1a;文件的新建、打开、导入、保存、另存为、下载JOSN文件、下载ZIP打包文件、导出为HTML、导出为Vue2组件、导出为Vue3组件、导出为React组件&#xff08;老版将不再维护&#xff09;、下载为PNG、下载为SVG 乐吾乐2D可视化组态编辑器demo&#xff1a;ht…

在linux 下交叉编译gdb 8.1.1 ,生成 windows下的exe程序

在Linux环境下进行交叉编译,生成适用于Windows的可执行程序(.exe),需要使用交叉编译工具链。对于特定的GDB版本(如8.1.1),你需要确保有适用于目标平台(Windows)的交叉编译工具链。以下是一些基本步骤和考虑因素: 获取GDB源码:首先,需要下载GDB 8.1.1的源码包。你可…

day62--若依框架(基础应用篇)

若依搭建 若依版本 官方 若依官方针对不同开发需求提供了多个版本的框架&#xff0c;每个版本都有其独特的特点和适用场景&#xff1a; 前后端混合版本&#xff1a;RuoYi结合了SpringBoot和Bootstrap的前端开发框架&#xff0c;适合快速构建传统的Web应用程序&#xff0c;其…

golang string、byte[]以及rune的基本概念,用法以及区别

在 Go 语言中&#xff0c;string、byte[] 和 rune 是处理文本和字符的三种不同数据类型。它们有各自的用途和特点&#xff0c;下面将详细介绍它们的基本概念、用法以及区别。 1. string 基本概念 字符串类型&#xff1a;string 是 Go 语言中的一种基本类型&#xff0c;用于表…

动态规划精品课 2024.6.26-24.7.3

一、斐波那契数列模型 0、第N个泰波那契数 class Solution {public int tribonacci(int n) {// 1. 创建 dp 表// 2. 初始化// 3. 填表// 4. 返回结果// 处理边界情况if (n 0)return 0;if (n 1 || n 2)return 1;int[] dp new int[n 1];dp[0] 0;dp[1] dp[2] 1;for (int i…

【计算机网络】应用层(作业)

1、万维网上的每个页面都有一个唯一的地址&#xff0c;这些地址统称为&#xff08;A&#xff09;。 A. 统一资源定位符URLB. IP地址C. 域名地址D. WWW地址 解析&#xff1a; 2、下列TCP/IP应用层协议中&#xff0c;可以使用传输层无连接服务的是&#xff08;D&#xff09;。…

Java list stream 常用方法

Sorted 根据字符长短排序 public class Java8Demo1 {public static void main(String[] args) {// Sort by length of the words.List<String> list Arrays.asList("1234","456","abefc");List<String> list1 list.stream().sor…

算法基础-----【动态规划】

动态规划(待完善) 动规五部曲分别为&#xff1a; 确定dp数组&#xff08;dp table&#xff09;以及下标的含义确定递推公式&#xff08;状态转移公式&#xff09;dp数组如何初始化确定遍历顺序举例推导dp数组、 动态规划的核心就是递归剪枝&#xff08;存储键值&#xff0c;…