树的遍历 | 1079 理解题意+DFS
这题如果读懂了题意,就很好做,一波操作就结束了。不过题目有点难读,考验耐心和读题的细致。
AC代码:
#include <stdio.h>
#include <memory.h>
#include <math.h>
#include <string>
#include <vector>
#include <set>
#include <stack>
#include <queue>
#include <algorithm>
#include <map> #define I scanf
#define OL puts
#define O printf
#define F(a,b,c) for(a=b;a<c;a++)
#define FF(a,b) for(a=0;a<b;a++)
#define FG(a,b) for(a=b-1;a>=0;a--)
#define LEN 100010
#define MAX (1<<30)-1
#define V vector<int> using namespace std; typedef struct Node{
int id,cnt=;
// bool isR=0; //isRetail
vector<int> l; //leaves
}Node; Node nd[LEN];
double ans=;
double p,r;
double rate; void dfs(int s,int d){
if(nd[s].cnt){
ans+=pow(rate,d)*p*nd[s].cnt;
return;
}
int i;
FF(i,nd[s].l.size()){
dfs(nd[s].l[i],d+);
}
} int main(){
// freopen("1079.txt","r",stdin);
int n,k,i,t;
I("%d%lf%lf",&n,&p,&r);
rate=+r/;
FF(i,n){
I("%d",&k);
if(k) while(k--){
I("%d",&t);
nd[i].l.push_back(t);
}else{
I("%d",&t);
nd[i].cnt=t;
// nd[i].isR=1;
}
}
dfs(,);
O("%.1f",ans);
return ;
}
树的遍历 | 1079 理解题意+DFS的更多相关文章
- 2021-ACM-ICPC-济南站  K Search For Mafuyu 【树的遍历与回溯,dfs, 邻接表】
		PAT 题目详情 (pintia.cn) 题目 题意描述 n个房间, 有n-1个通道, kanade初始在1,Mafuyu 位置未知,求K到M的最小期望,也就是到每个地方的平均值,注意的是这里的求法, ... 
- LeetCodeTwo Sum IV 树的遍历+Hash大法好
		题意 给定一颗二叉搜索树,返回是否存在两个节点的值之和为给定值K. 思路 同Two Sum.使用Hash表解决.只是要写个树的遍历而已,选取DFS. 源码 class Solution { publi ... 
- PAT甲级专题|树的遍历
		PAT甲级专题-树的遍历 涉及知识点:树.建树.深度优先搜索.广度优先搜索.递归 甲级PTA 1004 输出每一层的结点,邻接表vector建树后.用dfs.bfs都可以边搜边存当前层的数据, #in ... 
- POJ 2021 Relative Relatives(map+树的遍历)
		题意: 今天是Ted的100岁生日.凑巧的是,他家族里面每个人都跟他同一天生日,但是年份不同. 现在只给出一些 父亲的名字,孩子的名字,以及孩子出生时父亲的年龄, 要求将Ted以外的家族成员按年龄降序 ... 
- PAT-1079 Total Sales of Supply Chain (树的遍历)
		1079. Total Sales of Supply A supply chain is a network of retailers(零售商), distributors(经销商), and su ... 
- 数据结构--树(遍历,红黑,B树)
		平时接触树还比较少,写一篇博文来积累一下树的相关知识. 很早之前在数据结构里面学的树的遍历. 前序遍历:根节点->左子树->右子树 中序遍历:左子树->根节点->右子树 后序遍 ... 
- leetcode404-----简单的树的遍历
		Find the sum of all left leaves in a given binary tree. Example: 3 / \ 9 20 / \ 15 7 There are two l ... 
- L2-006. 树的遍历
		题目链接:L2-006. 树的遍历 今天一神给我手敲二叉树模板,瞬间就领悟了,感觉自己萌萌哒! 看上去很直观! #include <iostream> #include <cstdi ... 
- L2-006 树的遍历 (后序中序求层序)
		题目: 给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列.这里假设键值都是互不相等的正整数. 输入格式: 输入第一行给出一个正整数N(≤30),是二叉树中结点的个数.第二行给出其后序遍历序 ... 
随机推荐
- Sencha Modern
			Sencha Modern 前言 经过一个月捣鼓,基于sencha公司最新框架版本 ExtJS7.0 modern 的示例代码可以和大家见面了.示例中对系统主题.公共(组件,方法)封 ... 
- 06Shell并发控制
			并发控制 文件描述 文件句柄 File Descriptors (FD,文件描述符)或 文件句柄: 进程使用文件描述符来管理打开的文件 注意 1.如何通过exec打开一个文件 exec 数字<& ... 
- spring  注解AOP
			aspectAnnotation的切面信息,加到了AnnotationAwareAspectJAutoProxyCreator的advisorsCache属性里面去了. 解析annotationSe ... 
- perf性能调优
			工具准备 ubuntu:sudo apt-get install perf 嵌入式平台:下载源码编译 注意:编译过程中会有Auto-detectiing system feature的依赖库打印,注意 ... 
- Redis 设计与实现,看 SDS(Simple Dynamic String) 感悟
			Redis 设计与实现,看 SDS(Simple Dynamic String) 感悟 今天在看 Redis 设计与实现这本书的时候,发现了里面系统定义的数据结构 SDS,中文名为 简单动态字符串.对 ... 
- 一些优秀的 Entity Framework 开源项目
			增加全局过滤的项目(比如:IsDeleted 字段):https://github.com/zzzprojects/EntityFramework.DynamicFilters 谢谢浏览! 
- WinForm 程序在系统托盘显示
			前言 有些程序在关闭或最小化的时候会隐藏在系统托盘中,双击或右击会重新显示,winform实现其功能很简单,这边就简单的介绍下. 实现 在winform实现托盘使用notifyIcon控件,如果加菜单 ... 
- Netty中的ChannelFuture和ChannelPromise
			在Netty使用ChannelFuture和ChannelPromise进行异步操作的处理 这是官方给出的ChannelFutur描述 * | Completed successfully | * + ... 
- SpringBoot与Swagger整合
			1 SpringBoot与Swagger整合https://blog.csdn.net/jamieblue1/article/details/99847744 2 Swagger详解(SpringBo ... 
- 大文件SQl脚本怎么还原以及SQlsqlserver怎么全自动备份数据库
			1:导出的SQl脚本文件通常大于100M左右就会还原不了,不是报错就是说系统文件找不到(sql脚本是直接拖进来的,不存在路径的问题). 2:CMD 使用 OSQL命令或者Sqlcmd命令都是可以解决的 ... 
