Çadırlar ve Ağaçlar Bulmacası Nasıl Çözülür?

19.07.2026

Çadırlar ve Ağaçlar (kısaca çadır-ağaç), kâğıt üzerinde birkaç dakikada çözülen sade ama keyifli bir mantık bulmacasıdır. Bu yazıda önce kuralları, sonra bir bulmacayı baştan sona çözmenizi sağlayan temel adımları göreceksiniz — aşağıdaki etkileşimli örnekle birlikte.

Bulmacanın kuralları

Kurallar üç tanedir ve hepsi bu kadardır:

  • Her ağaca tam bir çadır yerleştirirsiniz. Çadır, ağacın yatay ya da dikey komşusundadır; çapraz olmaz.
  • İki çadır birbirine değmez — ne kenarından ne köşesinden.
  • Kenardaki sayılar, o satır ya da sütundaki çadır sayısını verir.

Çözülmüş bir bulmacada her ağaç bir çadıra eşlenir ve tüm sayılar tutar.

Nereden başlarsınız: çim hücreleri

En kolay adım, çadır konamayacak hücreleri işaretlemektir. Bunlara kısaca "çim" diyelim. İki durum hemen çim demektir:

  • Sayısı 0 olan bir satırın ya da sütunun tamamı çimdir.
  • Hiçbir ağaca komşu olmayan bir hücre çadır tutamaz; orası da çimdir.

Çimleri baştan işaretlemek işi kolaylaştırır: geriye yalnızca gerçek adaylar kalır.

Zorunlu çadırlar

Bir ağacın tek bir boş komşusu kaldıysa, çadır oraya gitmek zorundadır. Çadırı koyduğunuzda çevresindeki hücreler kendiliğinden çim olur, çünkü iki çadır birbirine değemez.

Aynı mantık sayılarla da işler. Bir satırda kalan uygun hücre sayısı, o satırda gereken çadır sayısına eşitse, hepsi çadırdır. Sayı sıfırsa hepsi çim. Buna satır (ya da sütun) doygunluğu diyebiliriz.

Adım adım: gerçek bir bulmaca

Aşağıdaki örnek, kendi üretecimizden çıkan gerçek bir kolay bulmacadır. ve tuşlarıyla adımları sırayla görebilirsiniz; her karede, o adımda hangi kuralın işlediği yazar. Tahmin yok — her hamle bir öncekinden zorunlu olarak çıkar.

Örnek çadır-ağaç bulmacası

{
  "schemaVersion": 1,
  "meta": {"mode": "whole"},
  "rows": 6,
  "cols": 6,
  "rowCounts": [0, 2, 0, 3, 0, 2],
  "colCounts": [1, 1, 1, 1, 0, 3],
  "trees": [[0, 5], [4, 2], [2, 5], [0, 0], [2, 1], [4, 5], [2, 3]],
  "solution": [[1, 5], [5, 2], [3, 5], [1, 0], [3, 1], [5, 5], [3, 3]],
  "steps": [
    {"index": 0, "technique": "BOARD", "caption": "Başlangıç durumu. Kenardaki sayılar o satır/sütundaki çadır sayısıdır. İlerlemek için › tuşuna basın.", "changes": [], "reasonCells": []},
    {"index": 1, "technique": "GRASS_NO_TREE", "caption": "Hiçbir ağaca (hâlâ çadır bekleyen) komşu olmayan hücrelere çadır konamaz — bunlar çim.", "changes": [{"r": 0, "c": 2, "s": "GRASS"}, {"r": 0, "c": 3, "s": "GRASS"}, {"r": 1, "c": 2, "s": "GRASS"}, {"r": 1, "c": 4, "s": "GRASS"}, {"r": 3, "c": 0, "s": "GRASS"}, {"r": 3, "c": 4, "s": "GRASS"}, {"r": 4, "c": 0, "s": "GRASS"}, {"r": 5, "c": 0, "s": "GRASS"}, {"r": 5, "c": 1, "s": "GRASS"}, {"r": 5, "c": 3, "s": "GRASS"}, {"r": 5, "c": 4, "s": "GRASS"}], "reasonCells": []},
    {"index": 2, "technique": "FORCED_TREE", "caption": "1. satır 1. sütun ağacının tek uygun komşusu 2. satır 1. sütun — oraya çadır, komşu hücreler çim.", "changes": [{"r": 0, "c": 1, "s": "GRASS"}, {"r": 1, "c": 0, "s": "TENT"}, {"r": 1, "c": 1, "s": "GRASS"}, {"r": 2, "c": 0, "s": "GRASS"}], "reasonCells": [[0, 0]]},
    {"index": 3, "technique": "FORCED_TREE", "caption": "1. satır 6. sütun ağacının tek uygun komşusu 2. satır 6. sütun — oraya çadır, komşu hücreler çim.", "changes": [{"r": 0, "c": 4, "s": "GRASS"}, {"r": 1, "c": 5, "s": "TENT"}, {"r": 2, "c": 4, "s": "GRASS"}], "reasonCells": [[0, 5]]},
    {"index": 4, "technique": "FORCED_TREE", "caption": "3. satır 2. sütun ağacının tek uygun komşusu 4. satır 2. sütun — oraya çadır, komşu hücreler çim.", "changes": [{"r": 2, "c": 2, "s": "GRASS"}, {"r": 3, "c": 1, "s": "TENT"}, {"r": 3, "c": 2, "s": "GRASS"}, {"r": 4, "c": 1, "s": "GRASS"}], "reasonCells": [[2, 1]]},
    {"index": 5, "technique": "FORCED_TREE", "caption": "3. satır 4. sütun ağacının tek uygun komşusu 4. satır 4. sütun — oraya çadır, komşu hücreler çim.", "changes": [{"r": 3, "c": 3, "s": "TENT"}, {"r": 4, "c": 3, "s": "GRASS"}, {"r": 4, "c": 4, "s": "GRASS"}], "reasonCells": [[2, 3]]},
    {"index": 6, "technique": "FORCED_TREE", "caption": "5. satır 3. sütun ağacının tek uygun komşusu 6. satır 3. sütun — oraya çadır, komşu hücreler çim.", "changes": [{"r": 5, "c": 2, "s": "TENT"}], "reasonCells": [[4, 2]]},
    {"index": 7, "technique": "LINE_ALL_TENTS", "caption": "4. satır: 1 uygun hücre = 1 çadır — hepsine çadır.", "changes": [{"r": 3, "c": 5, "s": "TENT"}], "reasonCells": []},
    {"index": 8, "technique": "LINE_ALL_TENTS", "caption": "6. satır: 1 uygun hücre = 1 çadır — hepsine çadır.", "changes": [{"r": 5, "c": 5, "s": "TENT"}], "reasonCells": []},
    {"index": 9, "technique": "GRASS_NO_TREE", "caption": "Hiçbir ağaca (hâlâ çadır bekleyen) komşu olmayan hücrelere çadır konamaz — bunlar çim.", "changes": [{"r": 1, "c": 3, "s": "GRASS"}], "reasonCells": []},
    {"index": 10, "technique": "FINAL", "caption": "Bulmaca çözüldü — her ağaç tam bir çadıra kavuştu.", "changes": [], "reasonCells": []}
  ]
}

Zorlandığınızda: ileri kontrol

Bazı bulmacalarda temel adımlar bir noktada tıkanır. O zaman bir hücreyi zihninizde deneyip sonucuna bakarsınız: "Buraya çadır koyarsam bir ağaç açıkta kalır ya da bir satır tamamlanamaz" diyebiliyorsanız, o hücre çimdir. Bu bir tahmin değildir; olmayacağı görülen bir hamleyi elemektir. Kolay ve orta bulmacalarımız çoğu zaman bu adıma bile ihtiyaç duymaz.

Kolay çadır-ağaç bulmacalarını yazdırın

Kuralları ve adımları gördüğünüze göre sıra pratikte. Çadırlar ve Ağaçlar bulmacalarına göz atın, kolay bir kitapla başlayın; yazdırın ve çözün.