题目名称 | 4004. 喵星人集会 |
---|---|
输入输出 | party.in/out |
难度等级 | ★★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 512 MiB |
测试数据 | 10 |
题目来源 | mouse 于2024-07-11加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
查看题解 | 分享题解 |
通过:1, 提交:14, 通过率:7.14% | ||||
梦那边的美好ET | 100 | 0.044 s | 3.58 MiB | C++ |
dream | 20 | 0.037 s | 3.29 MiB | C++ |
dream | 20 | 0.038 s | 3.35 MiB | C++ |
flyfree | 20 | 0.044 s | 3.71 MiB | C++ |
dream | 10 | 0.037 s | 3.35 MiB | C++ |
dream | 10 | 0.037 s | 3.35 MiB | C++ |
dream | 10 | 0.038 s | 3.35 MiB | C++ |
dream | 10 | 0.039 s | 3.34 MiB | C++ |
flyfree | 0 | 0.029 s | 3.36 MiB | C++ |
dream | 0 | 0.035 s | 3.34 MiB | C++ |
本题关联比赛 | |||
2024暑假C班集训C |
关于 喵星人集会 的近10条评论(全部评论) | ||||
---|---|---|---|---|
幽默topcoder
op_组撒头屯
2024-07-12 15:47
1楼
|
现在有一颗$n$个点的树,其中某些点有一个喵星人.
现在他们要到某个地方进行集会,但是肯定不能都聚到一个点,因为放不下- -.
事实上,一个点还是只能容纳一只喵星人。
但是他们要尽可能靠近,也就是说:任意两只喵星人之间的路径上不能存在一个没有喵星人的点.
但是现在它们显然还没有这样的靠近.
每一个喵星人都可以从原来所处的位置移动到另一个位置,消耗的体力为两个位置之间的路径的边数.
现在你要让某些喵星人移动到另外的位置,使得他们尽可能靠近.在此前提下使得所有喵星人消耗的体力之和尽可能小.
注意的是,你不用考虑喵星人之间的相互影响.
第一行一个整数$n$,表示树上的点数.
第二行一个长度为$n$的01
串,若第$i$位为1
则表示标号为$i$点开始时有一只喵星人.
接下来$n-1$行,每行两个整数$u, v$,表示标号为$u$的点与标号为$v$的点之间有一条无向边.
如存在一种合法的移动方法,输出一行一个整数,表示所有喵星人花费的体力值之和最小值.
否则输出除了QwQ之外的任意一个卖萌表情.
6 001101 1 2 2 3 3 4 2 5 1 6
2
对于$20\%$的数据,保证喵星人的数目$≤ 3$.
对于$50\%$的数据,$n ≤ 20$,保证喵星人的数目$≤ 8$.
对于$100\%$的数据,$1 ≤ n ≤ 50$,$1 ≤喵星人的数目≤ n$。