Tạo mê cung

Tạo mê cung để in với bốn hình dạng và ba mức độ khó. Mỗi mê cung có hạt giống để lặp lại, kèm lời giải tùy chọn và tải về dạng SVG.


Tải SVG
Lưới nhận từ 5 đến 40 ô theo mỗi chiều. Hạt giống là thứ khiến một mê cung lặp lại được: giữ nó thì bạn nhận lại đúng mê cung cũ, đổi nó thì ra mê cung mới. Để trống nếu muốn ngẫu nhiên.
Số ô
400
Số bước của lời giải
101
Ngõ cụt
36
Ngã rẽ
55

Đây là mê cung 20 x 20 ứng với hạt giống 708640. Nhập lại hạt giống đó để in ra mê cung y hệt, trên thiết bị này hay bất kỳ thiết bị nào khác.

Mê cung được dựng ra sao

Bộ tạo bắt đầu từ một lưới đặc toàn tường rồi khoét đường xuyên qua bằng quay lui đệ quy. Nó bước sang một ô kề chưa từng ghé, chọn ngẫu nhiên, và phá bức tường giữa hai ô; khi hết nước đi thì lần ngược theo dấu vết của chính mình cho tới khi gặp một ô vẫn còn chỗ mới để đi. Mỗi ô được ghé đúng một lần, nên mọi mê cung đều liền mạch hoàn toàn và luôn có lối xuyên qua. Chính những hành lang ngoằn ngoèo sinh ra từ cách này khiến mê cung ra dáng mê cung chứ không phải một mạng lưới toàn mẩu cụt ngắn.

Độ khó thực sự thay đổi điều gì

Ở đây độ khó không phải một thanh trượt mơ hồ, mà là tỷ lệ ngõ cụt được mở lại. Mức khó để nguyên mê cung như lúc vừa khoét, một mê cung hoàn hảo chỉ có một tuyến đường và nhiều chỗ rẽ nhầm nhất để sa vào. Mức vừa mở lại một phần tư số ngõ cụt, mức dễ mở tới bảy mươi phần trăm, biến những hành lang bịt kín ấy thành các vòng đi thẳng qua được. Trên lưới 20 x 20, con số rơi vào khoảng 42 ngõ cụt ở mức khó, 32 ở mức vừa và 14 ở mức dễ, còn tuyến ngắn nhất rút từ chừng 143 bước xuống 67 bước. Số liệu của chính mê cung trên màn hình hiện ngay phía trên nó, nên bạn thấy được mình thực sự nhận cái gì.

Hình chữ nhật, hình tròn, hình thoi và tam giác

Bốn hình dạng đều là đường bao cắt ra từ cùng một lưới ô vuông: ô nào có tâm rơi ra ngoài đường bao thì đơn giản bị bỏ đi trước khi bắt đầu khoét. Lưới 20 x 20 cho 400 ô nếu là hình chữ nhật, 316 ô nếu là hình tròn, 220 ô nếu là hình thoi và 200 ô nếu là tam giác, nên mê cung có hình dạng thì nhỏ hơn và nhanh hơn đôi chút so với hình chữ nhật cùng kích thước danh nghĩa. Vì cắt hình có thể bỏ sót một hai ô lạc lõng ở góc, bộ tạo chỉ giữ lại nhóm liền mạch lớn nhất rồi khoét trong đó, và đó là lý do mê cung có hình dạng không bao giờ vô tình thiếu mất một mảnh.

Hạt giống và việc in lại đúng mê cung cũ

Mỗi mê cung sinh ra từ một hạt giống, và hạt giống được hiển thị kèm kết quả. Gõ đúng hạt giống ấy với cùng kích thước, hình dạng và độ khó thì bạn nhận được đúng cùng một mê cung, hôm nay hay học kỳ sau, ở đây hay trên máy khác. Chính điều đó khiến nó dùng được thật sự trong lớp: phát mê cung ra, giữ lại hạt giống, rồi in lời giải sau từ cùng thiết lập với ô lời giải được tích. Hạt giống có thể là một từ thay vì con số, nên lop4-thuhai chạy tốt như 481029.

Nên biết

  • Chấm xanh là lối vào và chấm đỏ là lối ra; tường ngoài được mở ở cả hai chỗ.
  • Bản vẽ đo bằng milimét, nên in ở mức 100% sẽ cho tờ giấy đúng kích thước thật.
  • Bản tải SVG là ảnh vectơ, nên vẫn sắc nét ở mọi cỡ và có thể chỉnh sửa về sau.
  • Lời giải hiển thị là tuyến ngắn nhất, điều này quan trọng ở mức dễ vì các vòng tạo ra nhiều hơn một lối đi.
  • Không có gì được lưu lại. Mê cung được tạo trên máy chủ của chúng tôi và kết quả bị hủy sau khi gửi đi.

Câu hỏi thường gặp

Nhấn In và mọi thứ trừ mê cung sẽ được ẩn đi, nên tờ giấy in ra chỉ có mê cung, không kèm trình đơn hay tiêu đề xung quanh. Bản vẽ định cỡ bằng milimét, nên miễn là máy in đặt ở 100% chứ không phải vừa khít trang, mê cung sẽ ra đúng kích thước đang hiển thị.

Có, hạt giống sinh ra để làm việc đó. Ghi lại hạt giống hiện dưới mê cung, rồi nhập lại với cùng kích thước, hình dạng và độ khó là bạn có mê cung y hệt. Hạt giống có thể là từ, nên thứ như lop-3b dễ nhớ hơn một con số.

Luôn có. Thuật toán khoét đường ghé qua mỗi ô đúng một lần, nên cả mê cung là một vùng liền mạch duy nhất và đường từ lối vào tới lối ra được bảo đảm. Tích ô lời giải để thấy nó vẽ bằng màu đỏ.

Ở số ngõ cụt. Mức khó giữ mê cung hoàn hảo, nghĩa là chỉ một tuyến đường và nhiều ngõ cụt nhất. Mức vừa mở một phần tư trong số đó, mức dễ mở bảy mươi phần trăm, biến chúng thành các vòng. Mê cung dễ cũng đi ngắn hơn, khoảng 67 bước so với 143 bước trên lưới 20 x 20.

Vì hình dạng được cắt ra từ cùng một lưới. Hình tròn nội tiếp lưới 20 x 20 chỉ phủ khoảng 316 trong 400 ô, hình thoi 220 ô và tam giác 200 ô. Nếu muốn mê cung có hình dạng mà vẫn nhiều ô như hình chữ nhật, hãy chọn lưới lớn hơn.

Với trẻ nhỏ thì 10 x 10 mất chừng một phút, khoảng 39 bước. Lưới 20 x 20 là câu đố vừa tay với khoảng 96 bước, còn 40 x 40 là loại dài, hơn 200 bước. Lưới nhận từ 5 đến 40 ô mỗi cạnh, và hai cạnh không nhất thiết bằng nhau.

Được, nút Tải SVG lưu đúng bản vẽ bạn đang thấy. SVG là định dạng vectơ, nên phóng to cỡ nào cũng không vỡ hình và mở được bằng Inkscape, Illustrator hay trình duyệt nếu bạn muốn đổi màu hoặc đưa vào phiếu bài tập.

Có. Tuyến đường được tìm bằng tìm kiếm theo chiều rộng, cách này theo bản chất luôn trả về đường đi ngắn nhất. Trong mê cung khó thì dù sao cũng chỉ có một tuyến, nhưng ở mức dễ những ngõ cụt được mở lại tạo ra vòng và nhiều lối đi, nên hiển thị tuyến ngắn nhất mới là câu trả lời có ý nghĩa.

Làm mê cung để in như thế nào?

Chọn lưới từ 5 đến 40 ô mỗi cạnh, chọn hình dạng và độ khó, rồi in hoặc tải về dạng SVG. Mê cung được khoét bằng quay lui đệ quy nên luôn có lời giải, còn độ khó quyết định giữ lại bao nhiêu ngõ cụt. Mỗi mê cung đều có hạt giống, nên có thể in lại đúng mê cung đó về sau.