Sẵn sàng chơi chưa?

Chơi Sudoku!

Forcing Nets

Cực khóCổ điển + KillerBước 37 trên 38Đọc trong 5 phút

Forcing Nets (mạng cưỡng bức) là kỹ thuật cuối cùng vẫn là logic thuần túy. Bạn lần lượt lấy từng ứng viên của một ô, theo hệ quả của nó đến hết mức có thể, rồi tìm điều mà mọi nhánh đồng ý. Điều chúng đồng ý là đúng, vì một trong các ứng viên đó là giá trị thật. Không có đoán mò: bạn chỉ xét mọi trường hợp thay vì một.

Mẫu hình này là gì

Chuỗi theo một đường suy ra duy nhất. Mạng theo một đường như vậy cho mỗi lựa chọn của ô hoặc vùng xuất phát, và trong trường hợp tổng quát một đường có thể tách tiếp: một kết luận có thể cần hai suy luận trước đó cùng lúc, chẳng hạn "ô này là 4 và ô kia là 9, nên khối chỉ còn một chỗ cho số 7". Kiểm tra mọi lựa chọn làm mạng mạnh hơn chuỗi, nhưng kiểm tra chậm hơn.

Có hai cách bắt đầu và hai cách kết thúc:

Bắt đầu từBạn theoNó chứng minh
Một ô có k ứng viênmột nhánh cho mỗi ứng viênmọi điều các nhánh có chung
Một chữ số có k vị trí trong một vùngmột nhánh cho mỗi vị trímọi điều các nhánh có chung

Nếu mọi nhánh cho ra cùng một phép điền, phép điền đó đúng. Nếu mọi nhánh xóa cùng một ứng viên, ứng viên đó chết. Và nếu một nhánh đơn lẻ đụng mâu thuẫn (một chữ số xuất hiện hai lần trong một vùng, hoặc một ô không còn gì), thì ứng viên đó sai, không cần đến các nhánh khác.

Khi nào nên tìm

Chỉ khi mọi thứ rẻ hơn đã thất bại: single, tập khóa, fish, wing, chuỗi và Almost Locked Set. Mạng tốn công theo dõi và dễ sai, nên đây là bước logic cuối cùng có chủ đích, không phải thói quen. Hãy chọn ô xuất phát có hai ứng viên và nhiều ô hai ứng viên lân cận; các nhánh sẽ ngắn và toàn bộ vẫn kiểm tra được.

Cách áp dụng, từng bước

  1. Làm mới mọi ghi chú. Mạng dựng trên một ứng viên cũ chẳng chứng minh gì.
  2. Chọn một ô có hai ứng viên, hoặc một chữ số có hai vị trí trong một vùng.
  3. Giả sử lựa chọn đầu và chỉ ghi lại những phép điền thực sự bị buộc.
  4. Hoàn tác hết, rồi làm tương tự với lựa chọn thứ hai.
  5. So sánh các nhánh. Giữ mọi phép điền hoặc loại trừ mà chúng chung.
  6. Nếu một nhánh tự mâu thuẫn, hãy bỏ ứng viên đó ngay.

Ví dụ thực tế

Bắt đầu từ một ô

  1. Các kỹ thuật dễ hơn đã dùng hết. Hãy xem H1, chỉ có thể là 1, 5 hoặc 7.

  2. H1 phải là 1, 5 hoặc 7. Thử lần lượt từng giá trị và theo dõi số 7 ở C1.

  3. Nhánh 1: H1 = 7. C1 cùng cột 1 với H1, nên không thể là 7.

  4. Nhánh 2: H1 = 1. Khi đó A1 không thể là 1, nên A1 là 7, và C1 không thể là 7 (lại do cột 1).

  5. Nhánh 3: H1 = 5. E1 mất 5 (cột 1), nên F3 là chỗ duy nhất cho 5 trong khối 4.

    Với F3 = 5, F8 là chỗ duy nhất cho 8 trong hàng F. Khi đó C8 không thể là 8, nên C1 là số 8 duy nhất trong hàng C.

    C1 = 8, nên C1 không phải 7.

  6. Các giá trị thử được xóa. Cả ba nhánh đều kết thúc với C1 không phải 7.

    Loại 7 khỏi C1 vì mọi giá trị của H1 đều loại trừ nó.

Các kỹ thuật dễ hơn đã dùng hết. Hãy xem H1, chỉ có thể là 1, 5 hoặc 7.

H1 có , và mục tiêu là số 7 ở C1. Lần lượt theo từng giá trị của H1:

  • H1 = 7: C1 chung cột 1 với H1, nên không phải 7.
  • H1 = 1: A1 không thể là 1, nên A1 là 7, và C1 không phải 7 vì cùng lý do cột.
  • H1 = 5: E1 mất số 5, nên F3 là số 5 duy nhất trong khối 4. Khi đó F8 là số 8 duy nhất trong hàng F, C8 không thể là 8, và C1 là số 8 duy nhất còn lại trong hàng C. C1 = 8, nên C1 không phải 7.

Cả ba nhánh đều kết thúc với C1 không phải 7, nên C1 mất ứng viên 7. Bạn không bao giờ biết H1 là gì: các nhánh đã làm xong việc và bị vứt đi.

Bắt đầu từ một chữ số trong một vùng

  1. Các kỹ thuật dễ hơn đã dùng hết. Hãy xem các số 7 trong khối 7.

  2. Khối 7 cần một số 7, và nó chỉ có thể ở G2, H2 hoặc J3. Thử từng chỗ và theo dõi số 7 ở A2.

  3. Nhánh 1 và 2: nếu số 7 ở G2 hoặc H2, A2 không thể là 7, vì cả ba ô cùng cột 2.

  4. Nhánh 3: J3 = 7. Khi đó J3 không phải 5, và A3 trở thành chỗ duy nhất cho 5 trong cột 3.

    Với A3 = 5, A2 là chỗ duy nhất cho 1 trong hàng A. A2 = 1, nên không phải 7.

  5. Các giá trị thử được xóa. Khối 7 đặt số 7 ở đâu thì A2 cũng không còn số 7.

    Loại 7 khỏi A2.

Các kỹ thuật dễ hơn đã dùng hết. Hãy xem các số 7 trong khối 7.

Khối 7 cần một số 7, và nó chỉ có thể ở G2, H2 hoặc J3. Mục tiêu là số 7 ở A2:

  • Số 7 ở G2 hoặc H2: A2 chung cột 2 với cả hai ô, nên không phải 7.
  • Số 7 ở J3: khi đó J3 không phải 5, nên A3 là số 5 duy nhất trong cột 3. Với A3 = 5, A2 là số 1 duy nhất trong hàng A, nên A2 = 1 và không phải 7.

Dù khối 7 đặt số 7 ở đâu, A2 cũng không có số 7, nên A2 mất nó.

Ở cả hai bảng, mọi nhánh đều đến cùng một kết quả, đó là toàn bộ lập luận. Mạng thật còn có thể rẽ tiếp bên trong một nhánh, và khi đó một kết luận có thể cần hai suy luận trước đó cùng lúc.

Lỗi thường gặp

  • Để lại dấu của một nhánh trên lưới khi bắt đầu nhánh sau. Mọi nhánh phải bắt đầu từ cùng một vị trí chưa bị đụng tới.
  • Theo một điều "có lẽ" thay vì một phép điền bị buộc. Chỉ single và các phép loại trừ khóa mới được ghi.
  • Sót một ứng viên của ô xuất phát. Bỏ một nhánh thì sự đồng ý vô giá trị.
  • Coi mâu thuẫn ở một nhánh là bằng chứng cho kết luận của các nhánh khác.

Bạn gặp nó ở đâu

Forcing Nets là thứ mà các lưới khó nhất của chúng tôi được tạo ra để đòi hỏi. Hãy chờ chúng ở các câu đố Huyền thoại, và chỉ sau khi đã thử các kỹ thuật chuỗi như 3D Medusa. Bất cứ thứ gì một mạng giải được, về nguyên tắc một kỹ thuật ngắn hơn cũng giải được. Mạng là thứ bạn dùng khi không tìm ra kỹ thuật ngắn hơn đó.