Danh sách

Thuật toán tô màu (Flood Fill)

Dễ
Đồ Thị (Graphs - BFS/DFS) 600ms 64MB

Một hình ảnh được biểu diễn dưới dạng ma trận 2D các số nguyên image. Cho tọa độ xuất phát (sr, sc) và màu mới color. Hãy thực hiện tô màu loang (Flood Fill) 4 hướng cho tất cả các pixel liên thông cùng màu ban đầu.

Ví dụ 1:

Input:
image = [[1,1,1],[1,1,0],[1,0,1]]
sr = 1, sc = 1, color = 2
Output: [[2,2,2],[2,2,0],[2,0,1]]
Định Dạng Đầu Vào (Input)
Dòng 1: Ma trận image
Dòng 2: sr
Dòng 3: sc
Dòng 4: color
Định Dạng Đầu Ra (Output)
Ma trận sau khi tô màu
Ràng Buộc (Constraints)
  • 1 <= m, n <= 50
Ví Dụ Kiểm Thử Mẫu
Ví dụ 1:
Input:
[[1,1,1],[1,1,0],[1,0,1]]
1
1
2
Output:
[[2,2,2],[2,2,0],[2,0,1]]
Giải thích: Tô loang các ô liên thông
Ví dụ 2:
Input:
[[0,0,0],[0,0,0]]
0
0
0
Output:
[[0,0,0],[0,0,0]]
Giải thích: Màu trùng màu cũ, giữ nguyên
Gợi ý được sắp xếp theo cấp độ tiến dần. Hãy mở từng gợi ý khi bạn thực sự cần thêm định hướng.

Kỹ thuật DFS Loang 4 Hướng O(m * n)

Đệ quy 4 hướng cập nhật màu mới nếu trùng màu ban đầu.

Vui lòng đăng nhập

Đăng nhập tài khoản học viên để xem lịch sử nộp bài của bạn.

Đăng nhập
Ctrl + Enter: Chạy thử
Dữ liệu đầu vào (Input):
[[1,1,1],[1,1,0],[1,0,1]] 1 1 2
Kết quả kỳ vọng (Expected Output):
[[2,2,2],[2,2,0],[2,0,1]]
Dữ liệu đầu vào (Input):
[[0,0,0],[0,0,0]] 0 0 0
Kết quả kỳ vọng (Expected Output):
[[0,0,0],[0,0,0]]
Nhập STDIN của bạn (Mỗi dòng một tham số):

Bấm Chạy thử để kiểm tra các bộ test mẫu hoặc Nộp bài để chấm điểm chính thức.

Đang gửi mã và thực thi trên Sandbox Engine...
Nhấn Ctrl+Enter để chạy

vừa nâng cấp PRO khóa 1 phút trước   Tìm hiểu khóa học