1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol video solution AI分析

题目描述

消防员需要在城市中铺设消防栓。城市的道路可以看作是一棵连通且无回路的树,每个节点代表一个底座,边代表道路。

1.消防栓必须安装在底座上 => 消防栓只能放置在树的节点上

2.每条道路必须有消防栓盖 => 任何一条边都需要满足:所连接的两个节点至少有一个节点上有消防栓。

3.交叉路口只有一个消防栓底座,可以覆盖所有连接的道路 =》 每个节点最多放置一个消防栓,放置了就可以覆盖所有其他节点。

P2256.第2题-铺设消防栓

    1000ms Tried: 127 Accepted: 28 Difficulty: 8 所属公司 : 华为
    算法与标签>动态规划

题目内容

消防员正在给城市铺设消防栓,城市的道路可以看作一个连通且无回路的图,每条道路有两个底座,消防栓必须铺设在底座上,每条道路必须有消防栓盖;交叉路口只有一个消防栓底座;交叉路口的消防栓可以覆盖连接的所有道路,求至少需要多少个消防栓才能覆盖城市所有的道路?

输入描述

每个 casecasecase ,第一行一个整数 nnn ,表示底座数。(1<=n<=15001<=n<=15001<=n<=1500)

接下来 nnn 行,每行以 a:(b)a:(b)a:(b) 这样的格式开头,aaa 表示底座的编号(0<=a<=n−10<=a<=n-10<=a<=n−1), bbb 表示与该底座相连接的底座数,接下来 bbb 个数,表示与该底座相连的底座编号。

输出描述

一个数字,为需要的消防栓的最少个数

样例1

输入

3
0:(2) 1 2
1:(0)
2:(0)

输出

1

说明

000 号底座与 111 号和 222 号相连,那么只需要在 000 号铺设一个消防栓即可覆盖所有的道路,如下图所示:

image

样例2

输入

8
0:(3) 1 2 3
1:(1) 6
2:(0)
3:(0)
6:(1) 7
7:(2) 4 5
4:(0)
5:(0)

输出

3

说明

image

如图所示,在绿色节点上铺设消防栓即可覆盖全部道路

提示

动态规划

开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 2, 46ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?