Phỏng vấn top 150Dễ dàng

Chuỗi dấu ngoặc hợp lệ

Hướng dẫn chi tiết và cách triển khai Python cho bài toán 'Chuỗi dấu ngoặc đơn hợp lệ'.

Tuyên bố vấn đề

Dễ dàng

Cho một chuỗi s chỉ chứa ba loại ký tự: '(', ')' và '*', trả về True nếu s hợp lệ.

Các quy tắc sau xác định một chuỗi hợp lệ:

- Bất kỳ dấu ngoặc trái nào '(' đều phải có dấu ngoặc đơn bên phải tương ứng ')'.

- Bất kỳ dấu ngoặc đơn bên phải ')' nào cũng phải có dấu ngoặc đơn bên trái tương ứng '('.

- Dấu ngoặc trái '(' phải đứng trước dấu ngoặc đơn bên phải tương ứng ')'.

- '*' có thể được coi là một dấu ngoặc đơn bên phải ')' hoặc một dấu ngoặc đơn bên trái '(' hoặc một chuỗi trống.

Viết hàm checkValidString(s: str) -> bool.

Ràng buộc
  • 1 <= len(s) <= 100
  • s contains only '(', ')' and '*'

Ví dụ

Example 1
Input
s = "()"
Output
True
Explanation

Matches perfectly.

Example 2
Input
s = "(*)"
Output
True
Explanation

Treat '*' as empty string.

Example 3
Input
s = "(*))"
Output
True
Explanation

Treat '*' as '('.

Need a Hint?
Hãy cân nhắc sử dụng các cấu trúc dữ liệu dành riêng cho Greedy như tập hợp hoặc đống.
Edge Cases to Watch
  • Cấu trúc đầu vào trống
  • Đầu vào phần tử đơn
  • Giới hạn số lớn

Sẵn sàng để giải quyết?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Mở trong Trình chỉnh sửa
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Tài nguyên Python được đề xuất

Mở rộng kiến thức của bạn với các hướng dẫn tương tác, bảng ghi chú và so sánh mã có liên quan.