Type: RemoteJudge 1000ms 128MiB

战略游戏

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目背景

Bob 喜欢玩电脑游戏,特别是战略游戏。但是他经常无法找到快速玩过游戏的办法。现在他有个问题。

题目描述

他要建立一个古城堡,城堡中的路形成一棵无根树。他要在这棵树的结点上放置最少数目的士兵,使得这些士兵能瞭望到所有的路。

注意,某个士兵在一个结点上时,与该结点相连的所有边将都可以被瞭望到。

请你编一程序,给定一树,帮 Bob 计算出他需要放置最少的士兵。

输入格式

第一行一个整数 nn,表示树中结点的数目。

第二行至第 n+1n+1 行,每行描述每个结点信息,依次为:一个整数 ii,代表该结点标号,一个自然数 kk,代表后面有 kk 条无向边与结点 ii 相连。接下来 kk 个整数,分别是每条边的另一个结点标号 r1,r2,,rkr_1,r_2,\cdots,r_k,表示 ii 与这些点间各有一条无向边相连。

对于一个 nn 个结点的树,结点标号在 00n1n-1 之间,在输入数据中每条边只出现一次。保证输入是一棵树。

输出格式

输出文件仅包含一个整数,为所求的最少的士兵数目。

4
0 1 1
1 2 2 3
2 0
3 0

1

提示

数据规模与约定

对于全部的测试点,保证 1n15001 \leq n \leq 1500

ch01 - 树形 DP

Not Claimed
Status
Done
Problem
8
Open Since
2023-12-1 0:00
Deadline
2024-3-3 23:59
Extension
2400 hour(s)