Örneğin göz önüne alındığında çok setleri s1={2,3,7}
, s2={1,2,4,7,8}
ve s3={4,7}
bir Venn diyagramı görselleştirir bunlar grubu ya da bir elemanı olup olmadığına bağlı olarak, içinde ya da eğrinin çevresinin dışında ya olan kapalı bir eğri ve ayar elemanları tarafından her set. Tüm set elemanları Venn diyagramında sadece bir kez göründüğünden, birden fazla sette bir eleman varsa, her seti temsil eden eğrilerin çakışması gerekir. Her birine üst üste binen Venn diyagramının bir hücresi diyoruz .
Bu açıklama biraz kafa karıştırıcı olabilir, bu yüzden bir örneğe bakalım.
Misal
Kümeleri için A Venn diyagramı s1
, s2
ve s3
bu gibi görünebilir:
Bu Venn diyagramının hücreleri (soldan sağa, üstten alta doğru okuyun) vardır {1,8}
, {2}
, {7}
, {4}
, {3}
, {}
ve {}
.
Pratikte, biri genellikle iki veya üç setin Venn diyagramlarıyla karşılaşır, çünkü dört veya daha fazla setin Venn diyagramlarının temsili çok açık değildir. Bununla birlikte, örneğin altı set için vardır:
CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=1472309
Görev
Herhangi bir makul gösterimde boş olmayan pozitif tamsayılar kümesi verildiğinde, girdi kümelerinin Venn diyagramındaki hücre kümesini döndürün. Özellikle, herhangi bir grafik gösterimidir gereklidir.
- Tam bir program veya işlev yazabilirsiniz.
- Yalnızca bir boş küme (yani hücre kümesi ) yerine boş hücreler (yani tüm hücrelerin listesi ) olduğu kadar boş küme döndürebilirsiniz .
- Yukarıdaki örneğin girdi bazıları makul yolları bunlarla sınırlı değildir
{{2,3,7},{1,2,4,7,8},{4,7}}
,[[2,3,7],[1,2,4,7,8],[4,7]]
,"2,3,7;1,2,4,7,8;4,7"
veya"2 3 7\n1 2 4 7 8\n4 7"
. Seçtiğiniz giriş biçiminin kabul edilebilir olup olmadığından şüpheniz varsa, yorumda sormaya çekinmeyin. - Çıktı biçiminiz mümkünse giriş biçiminizle eşleşmelidir. Bu kuralın, biçiminizin boş kümeleri net bir şekilde görüntüleyebilmesini gerektirdiğini unutmayın.
- Bu kod golf , bu yüzden seçtiğiniz dilde mümkün olduğunca az bayt kullanmaya çalışın. Diller arasında değil dil başına rekabeti teşvik etmek için bir yanıtı kabul etmeyeceğim.
Test Durumları
Olası çıkışlarla birlikte bazı girişler:
input -> output
{{2,3,7},{1,2,4,7,8},{4,7}} -> {{1,8},{2},{7},{4},{3},{}} (or {{1,8},{2},{7},{4},{3},{},{}})
{{1,2,3},{4,5,6},{7,8,9}} -> {{1,2,3},{4,5,6},{7,8,9},{}}
{{}} -> {{}}
{{1,2,3},{1,2}} -> {{1,2},{3},{}}
{{4,3,8},{1,2,9,3},{14,7,8,5},{6,11,3,8},{10},{9,4,3,7,10}} -> {{6,11},{10},{4},{3},{8},{5,14},{1,2},{9},{7},{}}
{{2,3,4,7},{},{1,3,7,5,6},{2,3,7,5},{7,2,4,3,6},{1,4,5}} -> {{},{4},{2},{7,3},{1},{6},{5}}
{{1,2,3,4},{1,2,5,6},{1,3,5,7}} -> {{4},{3},{2},{1},{6},{5},{7}}
{{1,2,3},{4,5,6},{7,8,9},{},{},{},{}}
?