3486:积木-6

时间限制:1 S   /  内存限制:65536 KB
AC:36   /  Submit:64
问题描述

最近罗少迷上了积木,但是他似乎遇到了难题,你能帮帮他吗?

有 n 堆积木,每堆积木上有个字母表示当前状态,你可以选择进行以下两种操作:

1.若字母为 U ,则可以堆加一个积木

2.若字母为 D ,则可以去除一个积木

假如罗少体力无限,求在进行无数次操作后,是否可能使得 n 堆积木包含 1 ~ n 个积木

输入描述

第一行是一个正整数 T ,表示多组案例( 1 <= T <= 100 )

每组案例中

先是一个正整数 n ,表示n堆积木( 1 <= n <= 1000 )

然后是 n 个正整数,代表每堆积木的个数( 1 <= x <= 1000 )

然后是一串长度为 n 的字符串,代表每堆积木的状态

输出描述

若在进行无数次操作后,n 堆积木包含 1 ~ n 个积木,则输出 YES ;反之输出 NO 。

每次案例输出后换行

样例输入复制样例

3

4

1 2 5 2

DUDU

4

2 2 2 2

DUDU

5

5 1 5 1 5

UDUUD

样例输出

YES

YES

NO

提示说明

罗少十分厉害,直接秒杀了第一个案例,他是这么做的

对 i = 2 进行操作:[ 1 , 3 , 5 , 2 ]

对 i = 3 进行操作:[ 1 , 3 , 4 , 2 ]

因为 n 堆积木包含了 1 ~ 4  因此输出 YES 。

相关

题单#7(结构体排序)

TKK寒假赛Round#8


Copyright 2016 - 2024 XUJC ACM Team
闽ICP备2020022076号-1