luogu#P11394. [JOI Open 2019] ウイルス実験
[JOI Open 2019] ウイルス実験
题目描述
译自 JOI Open 2019 T3 「ウイルス実験」
JOI 公司研究了新型病毒 JOI virus
。JOI 公司希望通过用该病毒影响在 IOI 岛的动物做实验。
IOI 岛呈矩形。有 条从西向东的平行道路,和 条从北向南的平行道路。她们将岛分割成 个部分。每部分只有一只动物。我们称居住在北部第 ,西部第 部分的动物为 动物(i,j)
(,)。
在 IOI 岛上,一天有 个时间段。我们管第 个叫 时间段k
。风总是从某方向吹来:北方,南方,东方和西方。基于时间段,风向可能改变。如果时间段相同,风向总是不变,这和在哪一天无关。
每只动物有一个状态 抵抗力
。动物 的抵抗力表示为一个非负整数 。
-
如果 ,说明动物 有很高的抵抗力,使得它不被 JOI virus 感染。
-
如果 是一个正整数,说明动物 可能被感染。如果下面条件连续成立了 时间段,则他/她会从下一个时间段开始被感染。
-- 从风向处相邻的动物已经被传染。
注意最后一个时间段和下一天的第一个时间段是连续的。
为了实验,我们希望至少感染 只动物,但是我们不希望感染过多的动物。在开始,我们选择一只作为第一个被感染的。我们不能选择 的动物 作为第一个被感染的个体。
给定每个时间段的风向和每只动物的抵抗力。编写程序计算经过了 天后最少被感染了个体数,和达成此目标刚开始能选择的个体有几种。
输入格式
第 行三个整数 。
第 行一个整数 。
第 行,每行 个整数。第 行第 列的数表示 。
是长 的字符串表示风向。D 包含 种字符:, , , 。分别表示北南西东。第 个字符()表示第 个时间段的风向。
输出格式
第 行一个数表示最少被感染个体数。
第 行一个数表示使得被感染的个体最少,初始时有几种选法。
6 3 4
SWNEES
2 1 1 2
1 0 1 3
1 1 2 2
8
8
4 4 4
EWWE
1 2 1 2
1 1 1 1
0 0 0 0
2 2 2 4
3
3
提示
样例解释:
让我们考虑选择动物 作为初始被感染个体的情况。
对于动物 ,在第 天的时间段 ,刮南风,且南边相邻动物已经被感染,所以他/她会从第 天的时间段 被感染。
对于动物 ,在第 天的时间段 ,刮西风,且西边相邻动物已经被感染,所以他/她会从第 天的时间段 被感染。
对于动物 ,在第 天的时间段 ,刮南风,且南边相邻动物已经被感染,且在第 天的时间段 ,刮南风,且南边相邻动物已经被感染,所以他/她会从第 天的时间段 被感染。
对于动物 ,在第 天的时间段 ,刮西风,且西边相邻动物已经被感染,所以他/她会从第 天的时间段 被感染。
对于动物 ,在第 天的时间段 ,刮西风,且西边相邻动物已经被感染,所以他/她会从第 天的时间段 被感染。
对于动物 ,在第 天的时间段 ,刮北风,且北边相邻动物已经被感染,所以他/她会从第 天的时间段 被感染。
对于动物 ,在第 天的时间段 ,刮西风,且西边相邻动物已经被感染,且在第 天的时间段 ,刮北风,且北边相邻动物已经被感染。所以他/她会从第 天的时间段 被感染。
没有更多动物会被感染。所以当选择 动物 作为初始被感染者时,经过 天, 只动物会被感染。
不论选哪只动物作为初始被感染者,我们都无法使得 天后被感染的动物数量小于 ,所以输出的第一行是 。如果我们选择动物 ,,,,,, 或 作为初始被感染者,在 天后被感染的个数都是 。所以第二行应当输出 。
这个样例满足 子任务1
的约束条件。
数据范围:
,,。
是一个长度为 的字符串,只包含 , , , 。
(,)。
至少有一对 满足 (,)。
子任务:
- (14 分) 只包含 和 。
- (6 分),。
- (80 分)无额外约束。