Şaşırtıcı bir şekilde, grafik boyama konusunda henüz herhangi bir zorluk yaşamadık!
Yönlendirilmemiş bir grafik verildiğinde, her köşeye iki bitişik köşe aynı rengi paylaşmayacak şekilde bir renk verebiliriz. Küçük sayı χ , bunun için gereken farklı renkler olarak adlandırılır renk sayısı grafik.
Örneğin, asgari sayıda renk kullanarak geçerli bir renklendirme aşağıda gösterilmiştir:
(Wikipedia'da bulundu)
Bu grafiğin kromatik sayısı χ = 3'tür .
Köşe bir numara verilir bir program ya da fonksiyonu Yazın , N <16 (kadar numaralandırılmış olan 1 ile N ) ve bir kenar listesinin, bir grafiğin renk sayısını belirler.
Girdi önceden işlenmediği sürece girdiyi alabilir ve çıktıyı istediğiniz formatta üretebilirsiniz. Yani, bir dize veya dizi kullanabilir, dizeye uygun sınırlayıcılar ekleyebilir veya iç içe dizi kullanabilirsiniz, ancak ne yaparsanız yapın, düzleştirilmiş yapı aşağıdaki örneklerle aynı sayıları içermelidir (aynı sırayla).
Yerleşik grafik teorisi ile ilgili işlevleri (Mathematica'nınki gibi ChromaticNumber
) kullanamazsınız .
Grafiğin renklendirilemez olmasını sağlayacağı için grafiğin hiç döngüsü olmadığını (bir tepe noktasını kendisiyle birleştiren bir kenar) olduğunu varsayabilirsiniz.
Bu kod golf, en kısa cevap (bayt cinsinden) kazanır.
Örnekler
Programınız en azından bunların tümünü makul bir sürede çözmelidir. (Tüm girişleri doğru bir şekilde çözmelidir, ancak daha büyük girişler için daha uzun sürebilir.)
Gönderiyi kısaltmak için, aşağıdaki örneklerde, kenarları virgülle ayrılmış tek bir listede sunuyorum. Bunun yerine, satır sonlarını kullanabilir veya girdiyi isterseniz uygun dizi biçiminde bekleyebilirsiniz.
Üçgen (χ = 3)
3
1 2, 2 3, 1 3
6 köşeli "Halka" (χ = 2)
6
1 2, 2 3, 3 4, 4 5, 5 6, 6 1
5 köşeli "Halka" (χ = 3)
5
1 2, 2 3, 3 4, 4 5, 5 1
Yukarıdaki örnek resim (χ = 3)
6
1 2, 2 3, 3 4, 4 5, 5 6, 6 1, 1 3, 2 4, 3 5, 4 6, 5 1, 6 2
Yukarıdakilerin 7 köşe için genelleştirilmesi (χ = 4)
7
1 2, 2 3, 3 4, 4 5, 5 6, 6 7, 7 1, 1 3, 2 4, 3 5, 4 6, 5 7, 6 1, 7 2
Petersen grafiği (χ = 3)
10
1 2, 2 3, 3 4, 4 5, 5 1, 1 6, 2 7, 3 8, 4 9, 5 10, 6 8, 7 9, 8 10, 9 6, 10 7
5 köşenin yanı sıra bağlantısı kesilmiş tepe noktasının tam grafiği (χ = 5)
6
1 2, 1 3, 1 4, 1 5, 2 3, 2 4, 2 5, 3 4, 3 5, 4 5
8 köşenin tüm grafiği (χ = 8)
8
1 2, 1 3, 1 4, 1 5, 1 6, 1 7, 1 8, 2 3, 2 4, 2 5, 2 6, 2 7, 2 8, 3 4, 3 5, 3 6, 3 7, 3 8, 4 5, 4 6, 4 7, 4 8, 5 6, 5 7, 5 8, 6 7, 6 8, 7 8
15 köşeli üçgen kafes (χ = 3)
15
1 2, 1 3, 2 3, 2 4, 2 5, 3 5, 3 6, 4 5, 5 6, 4 7, 4 8, 5 8, 5 9, 6 9, 6 10, 7 8, 8 9, 9 10, 7 11, 7 12, 8 12, 8 13, 9 13, 9 14, 10 14, 10 15, 11 12, 12 13, 13 14, 14 15