第三周 树

devtools/2025/2/5 3:12:17/

猫猫和企鹅

分数 10

全屏浏览

切换布局

作者 姜明欣

单位 河北大学

王国里有 nn 个居住区,它们之间有 n−1 条道路相连,并且保证从每个居住区出发都可以到达任何一个居住区,并且每条道路的长度都为 1。
除 1号居住区外,每个居住区住着一个小企鹅,有一天一只猫猫从 1 号居住区出发,想要去拜访一些小企鹅。可是猫猫非常的懒,它只愿意去距离它在 d 以内的小企鹅们。
猫猫非常的懒,因此希望你告诉他,他可以拜访多少只小企鹅。

输入格式:

第一行两个整数 n,d,意义如题所述。
第二行开始,共 n−1 行,每行两个整数 u,v表示居民区 u 和 v 之间存在道路。

输出格式:

一行一个整数,表示猫猫可以拜访多少只小企鹅。

输入样例:

在这里给出一组输入。例如:

5 1
1 2
1 3
2 4
3 5

输出样例:

在这里给出相应的输出。例如:

2
#include <bits/stdc++.h>
using namespace std;
const int N = 4e4 + 10, M = N * 2;
int e[M], ne[M], h[N], idx;
int depth[N];
int st[N];
int cnt = 0;
int n, d;
void add(int a, int b)
{e[idx] = b, ne[idx] = h[a], h[a] = idx++;
}
// void dfs(int u, int father, int de)
// {
// //	if(de > d)	return ;
// //		cnt++;// 	for(int i = h[u]; i !=  -1; i = ne[i])
//     {
//         int j = e[i];//         // if(j == father)	continue;
//         if(!st[j] && de < d)
//         {
//        	        st[j] = true;
//        		dfs(j, u, de + 1);
// 			   cnt++;		
// 	    }//     }       // }
void bfs()
{queue<int> q;q.push(1);depth[1] = 0;while(!q.empty()){auto t = q.front();q.pop();for(int i = h[t]; i != -1; i = ne[i]){int j = e[i];if(!st[j]){st[j] = true;depth[j] = depth[t] + 1;if(depth[j] <= d) cnt++;else    return;q.push(j);}}}
}
int main()
{st[1] = true;cin >> n >> d;memset(h, -1, sizeof(h));for(int i = 1; i < n; i++){int a, b;cin  >> a >> b;add(a, b), add(b, a);}// dfs(1, -1, 0);bfs();
//  int cnt = 0;  for(int i = 2; i <= n; i++)
//        if(depth[i] <= d) cnt++;cout << cnt << endl;
}

会议

分数 15

全屏浏览

切换布局

作者 姜明欣

单位 河北大学

有一个村庄居住着 n 个村民,有 n−1 条路径使得这 n 个村民的家联通,每条路径的长度都为 1。现在村长希望在某个村民家中召开一场会议,村长希望所有村民到会议地点的距离之和最小,那么村长应该要把会议地点设置在哪个村民的家中,并且这个距离总和最小是多少?若有多个节点都满足条件,则选择节点编号最小的那个点。

输入格式:

第一行,一个数 n,表示有 n 个村民。
接下来 n−1 行,每行两个数字 a 和 b,表示村民 a 的家和村民 b 的家之间存在一条路径。

输出格式:

一行输出两个数字 x 和 y。
x 表示村长将会在哪个村民家中举办会议。
y 表示距离之和的最小值。

输入样例:

在这里给出一组输入。例如:

4
1 2
2 3
3 4 

输出样例:

在这里给出相应的输出。例如:

2 4
#include <bits/stdc++.h>
using namespace std;
const int N = 4000;
int g[N][N];
int n;
void floyd()
{for(int k = 1; k <= n; k++){for(int i = 1; i <= n; i++){for(int j = 1; j <= n; j++)g[i][j] = min(g[i][j], g[i][k] + g[k][j]);}}
}
int main()
{memset(g, 0x3f, sizeof(g));cin >> n;for(int i = 1; i < n; i++){int x, y;cin >> x >> y;g[x][y] = g[y][x] = 1;}floyd();int ans = 0x3f3f3f3f;int idx = -1;for(int i = 1; i <= n; i++){int res = 0;for(int j = 1; j <= n; j++){if(i == j)    continue;res += g[i][j];}  if(res < ans){ans = res;idx = i;}}cout << idx << " " << ans;
}


http://www.ppmy.cn/devtools/156155.html

相关文章

DeepSeek-R1 论文. Reinforcement Learning 通过强化学习激励大型语言模型的推理能力

论文链接&#xff1a; [2501.12948] DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning 实在太长&#xff0c;自行扔到 Model 里&#xff0c;去翻译去提问吧。 工作原理&#xff1a; 主要技术&#xff0c;就是训练出一些专有用途小模型&…

记忆化搜索和动态规划 --最长回文子串为例

记忆化搜索 记忆化搜索是一种优化递归算法的方法&#xff0c;通过将已经计算过的子问题的结果存储起来&#xff08;通常使用哈希表或数组&#xff09;&#xff0c;避免重复计算相同的子问题。 本质上是通过缓存中间结果来减少计算的重复性。 动态规划 动态规划是通过将问题分…

[STM32 标准库]定时器输出PWM配置流程 PWM模式解析

前言&#xff1a; 本文内容基本来自江协&#xff0c;整理起来方便日后开发使用。MCU&#xff1a;STM32F103C8T6。 一、配置流程 1、开启GPIO&#xff0c;TIM的时钟 /*开启时钟*/RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); //开启TIM2的时钟RCC_APB2PeriphClockC…

MATLAB中lineBoundary函数用法

目录 语法 说明 示例 匹配行的边界 匹配行的开头和结尾边界 对行的边界求反 lineBoundary函数的功能是匹配行首或行尾。 语法 pat lineBoundary pat lineBoundary(type) 说明 pat lineBoundary 创建与一行的行首或行尾&#xff08;包括 newline 字符&#xff09;匹…

使用 Kotlin 将 Vertx 和 Springboot 整合

本篇文章目的是将 Springboot 和 Vertx 进行简单整合。整合目的仅仅是为了整活&#xff0c;因为两个不同的东西整合在一起提升的性能并没有只使用 Vertx 性能高&#xff0c;因此追求高性能的话这是在我来说不推荐。而且他们不仅没有提高很多性能甚至增加了学习成本 一、整合流…

【Elasticsearch 】自定义分词器

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;精通Java编…

基于kamailio开发一个voip管理系统需要实现的基础功能

基于Kamailio开发一个VoIP管理系统需要实现多个核心功能&#xff0c;以确保系统的完整性、稳定性和可扩展性。以下是主要功能模块及其实现要点&#xff1a; 1. 用户管理 用户注册与认证&#xff1a; 实现SIP注册服务器功能&#xff0c;允许用户通过SIP客户端注册。支持多种认证…

以AI为翼:技术能力进阶的新路径

一、引言 1.1 研究背景与意义 在当今数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;已成为推动各领域发展的核心驱动力。从最初简单的算法模型到如今复杂的深度学习架构&#xff0c;AI 技术取得了令人瞩目的进步。自 20 世纪 50 年代人工智能概念提出以来&#x…