Görev
, Girişi bir liste / dizisi olan bir program ya da işlev Yazın X, çıkış tamsayılar ve tam sayıların setlerinin bir listesi , Y , örneğin, her bir eleman için , e her bir set , Y [ I ], X, [ E ] = I , ve bu setler toplam eleman sayısı o Y eleman sayısına eşit X .
(Bu, temelde dizilere uygulanması dışında bir karmaşanın / sözlüğün tersine çevrilmesiyle aynı işlemdir.)
Örnekler
Bu örnekler 1 tabanlı dizinlemeyi varsaymaktadır, ancak tercih ederseniz bunun yerine 0 tabanlı dizinlemeyi kullanabilirsiniz.
X Y
[4] [{},{},{},{1}]
[1,2,3] [{1},{2},{3}]
[2,2,2] [{},{1,2,3}]
[5,5,6,6] [{},{},{},{},{1,2},{3,4}]
[6,6,5,5] [{},{},{},{},{3,4},{1,2}]
Açıklamalar
- İsterseniz bir seti bir liste olarak temsil edebilirsiniz. Bunu yaparsanız, elemanlarının sırası önemli değildir, ancak elemanları tekrar etmeyebilirsiniz.
- Herhangi bir makul belirgin G / Ç formatı kullanabilirsiniz; örneğin, bir kümenin öğelerini boşluklarla ve kümelerin kendilerini yeni çizgilerle ayırabilirsiniz.
- Y , son derece uzun ve en azından X'in tüm öğelerini dizi dizinleri olarak alacak kadar uzun olmalıdır . Bununla birlikte, X'in maksimum elemanından daha uzun olabilir (ekstra elemanlar boş kümeler olur).
- X öğelerinin tümü geçerli dizi indisleri, yani 0 tabanlı indeksleme kullanıyorsanız negatif tamsayılar veya 1 tabanlı indeksleme kullanıyorsanız pozitif tamsayılar olacaktır.
Zafer durumu
Bir As kod golf meydan, kısa olması daha iyidir.
[5,5,6,6]
ve [6,6,5,5]
aynı olabilir?
[5,5,6,6]
ve [6,6,5,5]
aynı çıkışı olamaz, ama için çıkış [5,5,6,6]
, örneğin, aynı zamanda olabilirdi [{},{},{},{},{2,1},{4,3}]
.
[{0},{0},{0},{0},{1,2},{3,4}]
geçerli çıktı olur [5,5,6,6]
mu?