Cửa hàng vui vẻ đang bày bán ~ n ~ món đồ lưu niệm, được xếp thành một hàng và đánh số từ 1 đến ~ n ~ từ trái sang phải. Món đồ thứ ~ i ~ có khắc một ký tự ~ si ~ thuộc một trong sáu ký tự '{','}', '(', ')', '[', ']'. Độ đẹp của món đồ thứ ~ i ~ là ~ ci ~. Một người khách đến tham quan và muốn mua một dãy liên tiếp các món đồ, sao cho các ký tự trên các món đồ đó theo thứ tự lập thành một dãy ngoặc đúng. Hãy giúp vị khách chọn ra một dãy liên tiếp các món đồ thỏa mãn, sao cho tổng độ đẹp của các món đồ đó là lớn nhất có thể. Lưu ý, một dãy rỗng cũng được xem là một dãy thỏa mãn với tổng độ đẹp bằng 0.
Ở đây, dãy ngoặc đúng được định nghĩa như sau:
Xâu rỗng là một dãy ngoặc đúng;
Nếu A là một dãy ngoặc đúng thì (A), [A], {A} cũng là các dãy ngoặc đúng;
Nếu A và B là hai dãy ngoặc đúng thì AB là một dãy ngoặc đúng.
Dữ liệu vào:
Kết quả:
Ví dụ:
Input
10
}([{}]()))
5 -3 -2 5 -1 -1 2 4 2 6
Output
7
Giải thích: Vị khách sẽ mua các món đồ từ 3 đến 8.
Ràng buộc:
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 37724 |