N tamsayı ve bir tamsayı a
içeren bir tamsayı dizisi ; toplamı eşitlemek için en az miktarda öğeyi kaldırın . Herhangi bir kombinasyonları halinde kutu şeklinde bir falsy değeri döndürür.x
a
a
x
a
x
Bir yorumda belirtildiği gibi, bu, toplam x ile ayarlanan maksimum değerdir, daha küçük matematik beynimden özür dilerim. Üniversiteden beri çok fazla şartları unuttum.
Örnekler (Truthy):
f([1,2,3,4,5,6,7,8,9,10], 10) = [1,2,3,4]
f([2,2,2,2,2,2,2,2,2], 10) = [2,2,2,2,2]
f([2,2,2,2,-2,-2,-2,-4,-2], -8) = [2,2,-2,-2,-2,-4,-2]
f([-2,-4,-2], -6) = [-4,-2] OR [-2,-4]
f([2,2,2,4,2,-2,-2,-2,-4,-2], 0) = [2,2,2,4,2,-2,-2,-2,-4,-2]
(Değişmez)
f([], 0) = []
(Değişmeyen sıfır toplamlı durum)
Örnekler (Falsy, herhangi bir tutarlı dizi dışı değer):
Dava İmkansız: f([-2,4,6,-8], 3) = falsy (E.G. -1)
Sıfır Toplam Durum: f([], non-zero number) = falsy (E.G. -1)
- Not: gibi herhangi bir değer
[-1]
, potansiyel bir gerçek çıktı olduğu için sahte için geçerli olamaz.
Kurallar:
- Girdi, en son veya ilk olmak üzere dizi biçiminde veya bir argüman listesi olarak alınabilir
x
. - Çıktı, sınırlandırılmış herhangi bir tamsayı listesi olabilir. EG
1\n2\n3\n
veya[1,2,3]
. - Herhangi bir değer, bir tamsayı dizisi dışında, sahte bir gösterge olarak kullanılabilir.
- Kodunuz, son dizinin boyutunu maksimize etmelidir, sipariş önemli değildir.
- EG için
f([3,2,3],5)
hem[2,3]
ve[3,2]
de geçerlidir. - EG Çünkü
f([1,1,2],2)
sadece kısa[1,1]
olduğu gibi geri dönebilirsiniz[2]
.
- EG için
- Hem toplamı
a
hem de değeri,x
ondan küçük2^32-1
ve büyük olacaktır-2^32-1
. - Bu kod golf , en düşük bayt sayma kazançtır.
- Geçerlidir Aynı boyutta birden Altdizilim varsa, bunun değil hepsi çıkışına kabul edilebilir. Tek bir tane seçmeli ve onu çıkarmalısınız.
Bu durum kaydedildiyse, bulamadığımı bana bildirin.
Böyle bulduğum yazılar : İlgili ama kapalı , ...