← Nesim Apps

Mahjong Solitaire Tahtası Çözülebilir mi? Nasıl Garanti Ederiz

Nesim Razon, bağımsız Android geliştiricisi · 2026-11-10

Bitirilemeyen bir Mahjong Solitaire tahtası küçük bir ihanettir. On dakika düşünürsün, sonra yaptığın hiçbir şeyin işe yaramayacağını öğrenirsin. Tilelings'te her dağıtımın bir çözümü vardır ve bunu ummuyoruz: içine yerleştiriyoruz. Bu yazı yöntemi sade bir dille, garantinin nerede bittiği dahil, anlatıyor.

Rastgele dağıtımın sorunu

Tahta yapmanın bariz yolu taşları alıp karıştırmak ve yerleşime dizmektir. Hızlıdır ve birçok basit oyun böyle yapar. Sorun şu ki Mahjong Solitaire bir engelleme oyunudur. Taşlar birbirinin üstünde ve yanında durur, bir taş yalnızca serbestse çıkabilir. İki aynı taş yanlış yerlere düşerse, örneğin biri tam diğerinin üstüne, hiçbiri asla kaldırılamaz. Rastgele bir dağıtım böyle tuzaklar içerebilir ve kimse fark etmez.

Karıştırıp tahtanın çözülüp çözülemediğini sınayabilir, olmazsa yeniden karıştırabilirsin. Bu işe yarar, ama sınamak telefonda yavaş olabilecek bir arama problemidir ve sonucun ne kadar zor olacağı üzerinde hiç denetim vermez. Biz başka bir yol seçtik.

Fikir: taşlar yokken oyunu oyna

Resimleri önce yerleştirip sonra denetlemek yerine, hiç resmi olmayan, yalnızca boş konumlardan oluşan bir yerleşimle başlarız. Sonra onun üzerinde sahte bir solitaire oyunu oynarız. Her adımda hangi konumların serbest olduğuna bakar, rastgele ikisini seçer ve tahtadan alırız. İki konumu not ederiz. Yerleşim boşalana kadar tekrarlarız.

Not ettiğimiz liste, yasal hamlelerin eksiksiz bir dizisidir: her çift alındığı anda serbestti. Şimdi akıllıca kısım geliyor. Resimleri bu liste boyunca dağıtırız. Birinci çifte aynı resimli iki taş, ikinci çifte başka bir eşleşen çift verilir, böyle devam eder. Bitmiş tahtayı oynadığında aynı hamle dizisi sana da açıktır, çünkü her konum çifti sırayla serbesttir ve her çift artık eşleşir. Bir çözüm kurulumdan gelir.

Çıkmaza girince ne olur

Rastgele çift seçmek bizi köşeye sıkıştırabilir. Çok taş kalmışken yalnızca bir serbest konum kalırsa, sahte oyun devam edemez. Bu yüzden kurucu bir kural taşır: bir çifti aldıktan sonra, tahta boş değilse en az iki serbest konum kalmalı. Kural bozulursa kurucu bir adım geri gelir ve başka bir çift dener. Buna geri izleme denir.

Telefonda hızlı kalması için aramanın birkaç bin adımlık bir sınırı vardır. Sınıra gelirse deneme atılır ve yeni bir rastgele seçimle baştan başlanır. Uygulamada iyi bir dizi çabuk bulunur ve oyuncu hiç beklemez.

Minik bir örnek

Tek sırada, hiçbir şeyin üst üste olmadığı yalnızca altı konumluk bir yerleşim düşün. Sıradaki bir taş, sol ya da sağ yanı açıksa serbesttir; bu yüzden başlangıçta yalnızca iki uç konum serbesttir. İki ucu alıp birinci adım olarak not ederiz. Şimdi sonraki iki konum yeni uçlardır; onları ikinci adım olarak alırız, son iki konum da üçüncü adım olur.

Sonra resimleri bu adımlar boyunca dağıtırız. Birinci adım bir güneş ve bir güneş, ikinci adım bir ay ve bir ay, üçüncü adım bir yıldız ve bir yıldız alır. Biten sıra şöyle okunur: güneş, ay, yıldız, yıldız, ay, güneş. Oynadığında önce güneşleri, sonra ayları, sonra yıldızları alırsın: bizim kurduğumuz sıra. Aynı altı taşın rastgele karıştırılması güneş, yıldız, ay, güneş, yıldız, ay gibi bir sıra verebilir; orada güneşler hiçbir zaman birlikte serbest olmaz. Gerçek yerleşimlerde kuleler ve birçok sıra vardır, bu yüzden tuzaklar çok daha az belli olur, ama fikir tamamen aynıdır.

Resimleri dağıtmak

Takımdaki resimlerin çoğu dört kez bulunur. Çiçekler birbiriyle eşleşen dört farklı taştır, mevsimler de öyle. Taşları atarken paketler hâlinde gruplarız: her sıradan resim iki çift verir ve bunlar birlikte dört taşını oluşturur. Paketler karıştırılır ve çözümün adımlarına dağıtılır.

Zor seviyelerde ek bir hile var. Aynı resmin iki çifti, çözümün ilk yarısı ile ikinci yarısı arasında dağıtılır. Böylece aynı taşlar farklı zamanlarda serbest kalma eğilimindedir ve birlikte bulunan eşleşmeleri öylece kapamazsın. Tahta daha sıkı hissettirir ve daha çok plan ister.

Zorluğu seçmek

Her seviye için birkaç aday dağıtım kurarız; şu anki sürümde altı. Sonra her birini çözümünü yeniden oynayıp her adımda oyuncuya kaç eşleşen çift açık olduğunu sayarak ölçeriz. Ortalama, zorluk için iyi bir göstergedir. Yüksek ortalama çok seçenek ve bağışlayıcı bir tahta demektir. Düşük ortalama az seçenek ve talepkâr bir tahta demektir.

Kolay, en çok seçeneği olan adayı; Zor, en azı olanı; Normal ortadakini alır. Üçü de çözülebilirdir. Fark, yanlış yapabileceğin yolların sayısıdır.

Aynı tohum, aynı tahta

Rastgele seçimler tohumlu bir üreteçten gelir; bu yüzden belirli bir tohum her zaman aynı tahtayı üretir. Günlük meydan okumanın herkes için aynı olabilmesi ve yarım kalan oyunun geri yüklenebilmesi bu yüzdendir: oyun yalnızca hamlelerini ve tohumu kaydeder, tahtayı onları yeniden oynatarak kurar.

Karıştır, ipucu ve dürüst sınır

Garanti, başladığın dağıtımla ilgilidir. Her hamle dizisinin zafere varacağını söylemez. Bir oyuncu, bir resmin son iki kopyasını gömen bir çifti yine alabilir ve tahta o andan sonra imkânsız olur. Bu bulmacanın parçasıdır.

Bu anlar için oyunun yardımcıları var. İpucu gerçek bir çözücü kullanır. Mevcut durumu arar, en çok taş açan hamleleri önce dener, ölü uç olduğunu kanıtladığı durumları hatırlar ve bakacağı durum sayısında bir sınırı vardır. Tam bir çözüm bulursa ipucu onun ilk hamlesidir. Sınıra takılırsa en çok taş açan hamleye döner. Karıştır, aynı geriye doğru kurma işlemini bu kez kalan konumlarda, çiftlere gruplanmış kalan resimlerle yeniden çalıştırır. Karıştırılmış tahta yine çözülebilirdir. Çok nadiren sorun kalan konumların kendisidir; örneğin iki taşın üst üste kalması. O zaman hiçbir karıştırma yardım etmez ve oyun bunu söyler; sen de geri alabilir ya da yeniden başlayabilirsin.

Connect modu aynı numarayı kullanır

Taşları en çok iki dönüşlü bir yolla bağladığın Connect modu da aynı biçimde kurulur. Dolu bir ızgarayla başlarız, o anda bağlanabilen iki taşı tekrar tekrar seçip kaldırırız, o seviyenin kayma kuralını uygularız ve çifti kaydederiz. Resimler kaydedilen liste boyunca dağıtılır. Tahta çözülebilirdir, karıştırılmış olan da.

Neden önemsiyoruz

Dürüst zorluk önemlidir. Bir bulmaca plan istediği için zorsa adil hissettirir ve yeniden denemek istersin. Dağıtım bozuk olduğu için zorsa bir numara gibi hissettirir. Tahtaları geriye doğru kurmak, ilk türü vaat etmemizi sağlar. İmkânsız görünen bir tahtayla karşılaşırsan Geri al'ı kullan, ipucu al ya da karıştır. Baştan beri hep bir çıkış yolu vardır.

Sık sorulan sorular

Tilelings'teki her Mahjong Solitaire dağıtımı çözülebilir mi?

Evet. Her dağıtım yasal bir hamle dizisinden kurulur, bu yüzden başladığında en az bir çözüm vardır.

O zaman nasıl takılabilirim?

Çünkü kendi hamle dizilerinden bazıları eşleşen taşları gömebilir. Garanti başlangıç dağıtımını kapsar, her yolu değil.

Karıştır nasıl çözülebilir kalıyor?

Kalan konumları aynı geriye doğru yöntemle ve kalan resimlerle yeniden kurar.

İpuçları her zaman doğru mu?

İpucu mevcut durumdaki bir aramadan gelir. Arama biterse gerçek bir çözümü izler. Bitmezse en çok taş açan hamleyi önerir.

Diğer yazılar