Điểm:
1000 (p)
Thời gian:
2.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Nông dân John có \(N\) con bò \((2 \le N \le 3 \times 10^5)\) được đánh số từ \(1\) đến \(N\) như thường lệ. Những chú bò này đã xếp hàng thành một hoán vị \(p_1, p_2, \dots, p_N\). Bạn được cho một chuỗi dài \(N - 1\) chỉ bao gồm kí tự U
và D
. Hãy tìm ra số \(K \le N - 1\) lớn nhất sao cho tồn tại đãy con \(a_0, a_1, \dots, a_K\) của \(p\) thoả mãn với mọi \(1 \le j \le K, a_{j - 1} < a{j}\) nếu kí tự thứ \(j\) trong chuỗi là U
và \(a_{j - 1} > a{j}\) nếu kí tự thứ \(j\) trong chuỗi là D
.
Input
- Dòng đầu tiên là số \(N\).
- Dòng tiếp theo là các số \(p_1, p_2, \dots, p_N\).
- Dòng cuối cùng là chuỗi được cho.
Output
- Số \(K\) thoả mãn.
Scoring
- Subtask \(1\): \(N \le 500\).
- Subtask \(2\): \(N \le 5000\).
- Subtask \(3\): Phần đầu của chuỗi chỉ toàn kí tự
U
sau đó chỉ toàn kí tựD
. - Subtask \(4\): Không có thêm ràng buộc.
Test 1
Input
5
1 5 3 4 2
UDUD
Output
4
Note
Có thể chọn \([a_0, a_1, a_2, a_3, a_4] = [p_1, p_2, p_3, p_4, p_5]\).
Test 2
Input
5
1 5 3 4 2
UUDD
Output
3
Note
Có thể chọn \([a_0, a_1, a_2, a_3] = [p_1, p_3, p_4, p_5]\).
Bình luận