登山小分队(dfs,模拟)
原题链接:
题目描述
Foxity和他的好友们相约去爬山,但是他们每个人都来到了不同的山脚下。整个山的结构类似一棵 "树",有很多的观光节点通过一条条山道连接起来。
在图论中,树是一种无向图,其中任意两个顶点之间存在唯一一条路径。或者说,只要没有回路的连通图就是树。这个问题中,我们将山顶视作树的根节点,而山脚视为树的叶节点,上山的每一条路可以视作树的一条边。
由于上山的道路年久失修,每条道路在同一时刻只能容纳一个人,而通过一条道路需要花费 111 时间。
现在他们分散在各个山脚(每个山脚恰好有一个人),现在他们想要知道最快的情况下,从现在到最后一个人登上山顶总共要花费多久的时间。
输入描述:
第一行一个整数 n(1≤n≤1000)n(1 \le n \le 1000)n(1≤n≤1000),表示总共节点的数量。接下来 n−1n-1n−1 行,每行两个整数,分别是 xi,yi(1≤xi,yi≤n)x_i,y_i(1 \le x_i,y_i \le n)xi,yi(1≤xi,yi≤n),表示有一条路连接 xix_ixi 号点 和 yiy_iyi 号点,其中 111 号点即为山顶,保证给定的图是一棵树。
输出描述:
输出一行一个数,表示所有人都到齐的最少时间。
示例1
输入
复制3 1 2 1 3
3 1 2 1 3
输出
复制1
1
示例2
输入
复制4 1 2 2 3 2 4
4 1 2 2 3 2 4
输出
复制3
3
思路:
1,这个题真的没什么思路
2,要求每次一条路只能走一人,所有人走到1节点的最短时间
3,这个题最难的是,单个节点记录数量,dfs深度搜索,递归的书写
代码:
int num[1100];
vector<int>g[1100];
void dfs(int z,int fa){for(int i=0;i<g[z].size();++i){int y=g[z][i];if(y==fa)continue;//防止重复遍历if(num[y]){//模拟走的过程num[z]++;num[y]--;}dfs(y,z);//遍历子节点}
}
signed main(){//dfs模拟每一秒的动作int n;cin>>n;rep(i,1,n-1){int x,y;cin>>x>>y;g[x].emplace_back(y);//无向图g[y].emplace_back(x);}int sum=0;rep(i,2,n){if(g[i].size()==1)sum++,num[i]=1;//记录单个节点的}int ans=0;while(num[1]!=sum){//模拟每一秒,在一条路上能走则走dfs(1,1);ans++;}cout<<ans<<'\n';return 0;
}
相关文章:
登山小分队(dfs,模拟)
原题链接: 题目描述 Foxity和他的好友们相约去爬山,但是他们每个人都来到了不同的山脚下。整个山的结构类似一棵 "树",有很多的观光节点通过一条条山道连接起来。 在图论中,树是一种无向图,其中任意两个顶…...

Luminar Neo:重塑图像编辑新纪元,Mac与Win双平台畅享创意之旅
在数字时代的浪潮中,图像编辑软件已成为摄影师和设计师们不可或缺的创作工具。Luminar Neo,作为一款专为Mac与Windows双平台打造的图像编辑软件,正以其卓越的性能和创新的编辑功能,引领着图像编辑的新潮流。 Luminar Neo不仅继承…...
计算机二级Python题库深度解析与备考策略
计算机二级Python题库深度解析与备考策略 随着信息技术的飞速发展,Python作为一门简洁、易读且功能强大的编程语言,受到了越来越多人的青睐。计算机二级Python考试作为衡量考生Python编程水平的重要标准,其题库内容涵盖了Python语言的基础知…...

微信商家转账到零钱:实用指南,涵盖开通、使用与常见问题
商家转账到零钱是什么? 商家转账到零钱功能整合了企业付款到零钱和批量转账到零钱,支持批量对外转账,操作便捷。如果你的应用场景是单付款,体验感和企业付款到零钱基本没差别。 商家转账到零钱的使用场景有哪些? 这…...
[精选]Kimi到底是什么,将带来什么?
## 阿里通义千问重磅升级:免费开放1000万字长文档处理功能。 Kimi突然的泼天富贵,大家都想沾一把。短期这一块大概率会继续热一段时间。 作为月之暗面的创始人,杨植麟常把他的AGI梦想形容为“登月计划”,长文本就是这个伟大计划…...

MySQL学习笔记------SQL(2)
ziduanSQL DML 全称为:Data Manipulation Language,用来对数据库中表的数据记录进行增删改操作 插入数据 添加数据(INSERT) 给指定字段添加数据:INSERT INTO 表名(字段名1,字段名2,......…...

【循环神经网络rnn】一篇文章讲透
目录 引言 二、RNN的基本原理 代码事例 三、RNN的优化方法 1 长短期记忆网络(LSTM) 2 门控循环单元(GRU) 四、更多优化方法 1 选择合适的RNN结构 2 使用并行化技术 3 优化超参数 4 使用梯度裁剪 5 使用混合精度训练 …...

KW音乐搜索参数
声明: 本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 逆向目标: …...

SpringBoot3+Vue3项目的阿里云部署--将后端以及前端项目打包
一、后端:在服务器上制作成镜像 1.准备Dockerfile文件 # 基础镜像 FROM openjdk:17-jdk-alpine # 作者 MAINTAINER lixuan # 工作目录 WORKDIR /usr/local/lixuan # 同步docker内部的时间 RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ…...

MySQL 存储引擎
目录 一、存储引擎概念介绍 二、MySQL常用的存储引擎 1、 MyISAM 1.1 MylSAM的特点 1.2 MyISAM 表支持 3 种不同的存储格式: (1)静态(固定长度)表 (2)动态表 (3)压缩表 1.3 MyISAM适用…...
perl:打开文件夹,选择视频文件,并播放
在Windows10系统中Perl安装Tk模块 运行 cmd cpan install Tk 编写 openvideo.pl 如下 #!/usr/bin/perl use strict; use warnings; use File::Basename; use Tk;my $mw MainWindow->new or die cannot create Widget;my $types [[AVI, .avi], [MP4, .mp4]];my $file $…...

分布式链上随机数和keyless account
1. 引言 相关论文见: Aptos团队2024年论文 Distributed Randomness using Weighted VRFs 相关代码实现见: https://github.com/aptos-labs/aptos-core(Rust) 在链中生成和集成共享随机数,以扩展应用和强化安全。该…...

【项目设计】基于MVC的负载均衡式的在线OJ
项目代码(可直接下载运行) 一、项目的相关背景 学习编程的小伙伴,大家对力扣、牛客或其他在线编程的网站一定都不陌生,这些编程网站除了提供了在线编程,还有其他的一些功能。我们这个项目只是做出能够在线编程的功能。…...

MRC是谁?- 媒体评级委员会 Media Rating Council
在在线广告的世界里,有许多不同的技术和实践用于提供和衡量广告。对于广告商、出版商和营销人员来说,了解这些技术是如何工作的以及如何有效使用这些技术很重要。在这方面发挥关键作用的一个组织是媒体评级委员会(MRC)。 1. 了解…...

反序列化漏洞简单知识
目录: 一、概念: 二、反序列化漏洞原因 三、序列化漏洞的魔术方法: 四、反序列化漏洞防御: 一、概念: 序列化: Web服务器将HttpSession对象保存到文件系统或数据库中,需要采用序列化的…...
Es之正排索引与倒排索引
文章目录 概要一、正排索引二、倒排索引三、Q&A四、参考 概要 很早就研究了Es倒排索引的具体实现,但对倒排索引和正派索引的定义不是那么清晰,本文就是简述本人对二者的理解。 正排索引和倒排索引的概念来源于 正排索引是文档(ID)到关键词的映射&am…...
wordpress将图片默认连接到媒体文件
wordpress上传图片后,图片链接可以选择链接到媒体文件或附件页面。如果选择链接到媒体文件,就是链接到了图片的地址了。如果选择链接到附件页面,就是链接到图片所在的attachment页面了。 具体链接到哪里,在wordpress模板制作时&a…...

Java学习笔记 | Java基础语法 | 03 | 流程控制语句
文章目录 0 前言1.流程控制语句1.1 流程控制语句分类1.2 顺序结构 2.判断语句2.1 if语句1. if语句格式1练习1:老丈人选女婿练习2:考试奖励 2. if语句格式2练习1:吃饭练习2:影院选座 3. if语句格式3练习1:考试奖励 2.2 …...
记录新人的web3之旅
简单记录一下自己奇妙又充满热情的web3之旅,希望能勉励未来的自己 2023.10.25—— 第一次觉得对web3,币圈感到好奇是我在油管看了《隐藏的币圈亿万富翁》。这个简短的纪录片讲了郑皓升的传奇A9人生,从币圈中致富,再到被制裁,被软…...

由浅到深认识Java语言(9):Eclipse IDE简介
该文章Github地址:https://github.com/AntonyCheng/java-notes 在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.c…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...

ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...