==========
PHẦN 3: Các phương án giải (tiếp theo)
==========
Phương án giải số 3.1: Giải theo hàng
(tiếp theo)
Biến cách nghĩ thành hình ảnh trực quan:
Thời điểm gọi phương án giải số 3.1:
Ta đang đứng ở cells(r,c) trong ô vuông 9x9, đó là các ô được tô màu vàng dưới đây. Từ đó ta gọi phương án giải số 3.1 ra giải quyết.
Như vậy điều kiện để gọi phương án giải số 3.1 là c=1.
Kiểm tra trước đó:
Ta kiểm tra lần lượt từ hàng 1 tới hàng 9, xem có số nào chưa tồn tại trong hàng hay không. Nếu chưa tồn tại thì số đó là ứng cử viên đáp án cho hàng đó.
Trong đó, cấm chỉ việc một số lặp lại trong cùng hàng hay cột, hay trong khu vực ô vuông 3x3. Điều này thì cũng giống như phương án giải số 2.
Ví dụ khi ta xét ô A1. Thì các khu vực không được lặp lại số là phần tô màu vàng hồng.
SetCnt sẽ tăng lên 1 nếu ta tìm thấy một ô cells có khả năng điền đáp án.
Vì vậy:
Nếu SetCnt >1 thì không thể quyết định được gì.
Nếu SetCnt = 1 thì ta quyết định được đáp án.
PHẦN 3: Các phương án giải (tiếp theo)
==========
Phương án giải số 3.1: Giải theo hàng
(tiếp theo)
Biến cách nghĩ thành hình ảnh trực quan:
Bạn cần đăng nhập để thấy đính kèm
Thời điểm gọi phương án giải số 3.1:
Ta đang đứng ở cells(r,c) trong ô vuông 9x9, đó là các ô được tô màu vàng dưới đây. Từ đó ta gọi phương án giải số 3.1 ra giải quyết.
Bạn cần đăng nhập để thấy đính kèm
Như vậy điều kiện để gọi phương án giải số 3.1 là c=1.
Kiểm tra trước đó:
- Nếu như trong hàng không còn cells trống nào thì kết thúc.
- Nếu như trong hàng còn cells trống thì cần gọi phương án giải số 3.1
Ta kiểm tra lần lượt từ hàng 1 tới hàng 9, xem có số nào chưa tồn tại trong hàng hay không. Nếu chưa tồn tại thì số đó là ứng cử viên đáp án cho hàng đó.
Bạn cần đăng nhập để thấy đính kèm
Trong đó, cấm chỉ việc một số lặp lại trong cùng hàng hay cột, hay trong khu vực ô vuông 3x3. Điều này thì cũng giống như phương án giải số 2.
Ví dụ khi ta xét ô A1. Thì các khu vực không được lặp lại số là phần tô màu vàng hồng.
Bạn cần đăng nhập để thấy đính kèm
Tên biến số | Kiểu dữ liệu | Định nghĩa |
---|---|---|
SetCnt | Long | Đếm số ô cells có khả năng điền đáp án |
x | Long | Lưu cột của cells có khả năng điền đáp án |
Vì vậy:
Nếu SetCnt >1 thì không thể quyết định được gì.
Nếu SetCnt = 1 thì ta quyết định được đáp án.