[Buổi 15][Ngăn xếp][ADV] Bài 1: Đoạn ngoặc hợp lệ dài nhất


LÀM BÀI

Points: 100
Time limit: 2.0s
Memory limit: 256M

Author:
Problem types

Đoạn ngoặc hợp lệ dài nhất

Bối cảnh và bài toán

Một bộ phân tích nhận chuỗi chỉ gồm ( và ). Cần tìm những đoạn liên tiếp tạo thành chuỗi ngoặc đúng. Hệ thống quan tâm tới độ dài lớn nhất và số đoạn có đúng độ dài lớn nhất đó.

Yêu cầu

In độ dài lớn nhất của một substring ngoặc hợp lệ và số substring đạt độ dài đó. Nếu không có substring hợp lệ không rỗng, in 0 1.

Input

  • Một dòng chứa chuỗi s.

Output

In hai số L C.

Ràng buộc

  • 1 <= |s| <= 10^6
  • s[i] là(hoặc)``

Chấm điểm

Subtask Điểm Điều kiện Official tests
S1 20% |s| <= 2000 01–04
S2 30% |s| <= 10^5 05–10
S3 50% Không có ràng buộc bổ sung 11–20

Ví dụ 1

Input

)((())))(()())

Output

6 2

Giải thích. Có hai đoạn hợp lệ dài 6: ((())) và (()()).

Ví dụ 2

Input

))(

Output

0 1

Giải thích. Không có cặp ngoặc hợp lệ; theo quy ước in 0 1.

Thông tin bài tập

Thuộc tính Giá trị
Mã bài DSA-M05-B15-ADV01
Buổi B15
Loại bài ADVANCED
Mức độ khó Khó (Hard)
Thời gian làm bài khuyến nghị 70 phút
Time limit 2 giây
Memory limit 256 MB
Tổng điểm 100
Chuẩn ngôn ngữ tham chiếu C++11 trở lên
Yêu cầu bổ sung Decision Note

Nguồn: Phỏng theo Codeforces 5C – Longest Regular Bracket Sequence.

Tham khảo: https://codeforces.com/problemset/problem/5/C


Comments

There are no comments at the moment.

Zalo