Giriş:
Birkaç gün önce , HNQ'da karşılaştığımda bu yazıyı aynı başlıkla okudum. Bu soruda, başkan adayı Bernie Sanders'in iddiasının aşağıdakileri iddia ettiği iddia ediliyor:
Bugün dünyanın en zengin 26 milyarderinden 26'ı, şimdi dünya nüfusunun yarısı, dünyadaki en fakir 3,8 milyar insan kadar servet sahibi.
Videoya bağlantı
doğru ya da değil. Lütfen orada cevaplar ve tartışmalar için sorunun kendisine gidin.
Bu talebe dayanarak gerçekleşen zorluklara gelince:
Meydan okuma:
İki giriş: azalan sıralanmış bir numara listesi ve bir sayı (burada , ).
Çıktı: Toplam toplam ≤ L listesindeki ilk n değerlerinin toplamı olan mümkün olan en uzun soneki alt listesi .
Örnek:
Girişler: = [500,200,150,150,125,100,75,75,55,50,40,30,30,20,10,10,8,5,5,5,3,2,2,1,0,-2,-3]
ve .
Çıktı:[125,100,75,75,55,50,40,30,30,20,10,10,8,5,5,5,3,2,2,1,0,-2,-3]
Niye ya?
L ( ) listesinin ilk değeri toplanır . Kalan sayıların tüm eklerini ve bunların toplamlarını alırsak:[500,200]
700
Suffix: Sum:
[-3] -3
[-2,-3] -5
[0,-2,-3] -5
[1,0,-2,-3] -4
[2,1,0,-2,-3] -2
[2,2,1,0,-2,-3] 0
[3,2,2,1,0,-2,-3] 3
[5,3,2,2,1,0,-2,-3] 8
[5,5,3,2,2,1,0,-2,-3] 13
[5,5,5,3,2,2,1,0,-2,-3] 18
[5,5,5,5,3,2,2,1,0,-2,-3] 23
[10,5,5,5,5,3,2,2,1,0,-2,-3] 33
[10,10,5,5,5,5,3,2,2,1,0,-2,-3] 43
[20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 63
[30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 93
[30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 123
[40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 163
[50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 213
[55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 268
[75,55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 343
[75,75,55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 418
[100,75,75,55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 518
[125,100,75,75,55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 643
[150,125,100,75,75,55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 793
[150,150,125,100,75,75,55,50,40,30,30,20,10,10,5,5,5,5,3,2,2,1,0,-2,-3] 943
Bir miktar daha düşük ya da eşit olan en uzun eki 700
olan [125,100,75,75,55,50,40,30,30,20,10,10,8,5,5,5,3,2,2,1,0,-2,-3]
bir miktar ile 643
bu sonuç olan, bu yüzden.
Meydan okuma kuralları:
- İlk öneki değerler çıkış-sonekine sayılmaz. Yani =
[10,5,5,3]
ve girişleri sonuçlanır[5,3]
ve sonuçlanmaz[5,5,3]
. - G / Ç esnektir. Sen girdi can vb STDIN'den aracılığıyla birer tamsayı / ondalık / dizeleri, tek sınırlandırılmış dize, tek bir liste / dere / dizi olarak yapabilirsiniz tamsayılar / ondalık / dizeleri bir liste / dere / dizi olarak çıktı hem de ayrılmış bir dize yazdırın / iade edin, her yeni satırda bir sayı yazdırın, vb.
- Çıkışın boş olmadığı garantilidir. Eğer böyle test durumları ile uğraşmak zorunda olmayacak Yani =
[-5,-10,-13]
ve ile sonuçlanan[]
. - Hem (veya her ikisi de) hem girdi hem de çıktı, eğer isterseniz, azalan düzen yerine artan sırada olabilir.
Genel kurallar:
- Bu kod golf , bayt cinsinden en kısa cevap kazanır.
Code-golf dillerinin, codegolfing olmayan dillerle cevap göndermekten vazgeçmesine izin vermeyin. Herhangi bir programlama dili için mümkün olduğunca kısa bir cevap bulmaya çalışın. - Standart G / Ç kurallarına cevabınız için standart kurallar geçerlidir , bu nedenle STDIN / STDOUT işlevlerini, uygun parametreleri içeren fonksiyonlar / yöntemleri ve dönüş tipini, tam programları kullanmanıza izin verilir. Senin çağrı.
- Varsayılan Loopholes yasaktır.
- Mümkünse, lütfen kodunuzu test eden bir bağlantı ekleyin (ör. TIO ).
- Ayrıca, cevabınız için bir açıklama eklemek şiddetle tavsiye edilir.
Test durumları:
Inputs: L=[500,200,150,150,125,100,75,75,55,50,40,30,30,20,10,10,8,5,5,5,3,2,2,1,0,-2,-3], n=2
Output: [125,100,75,75,55,50,40,30,30,20,10,10,8,5,5,5,3,2,2,1,0,-2,-3]
Inputs: L=[10,5,5,3], n=2
Output: [5,3]
Inputs: L=[7,2,1,-2,-4,-5,-10,-12], n=7
Output: [-12]
Inputs: L=[30,20,10,0,-10,-20,-30], n=1
Output: [20,10,0,-10,-20,-30]
Inputs: L=[100,35,25,15,5,5,5,5,5,5,5,5,5,5,5,5,5], n=1
Output: [15,5,5,5,5,5,5,5,5,5,5,5,5,5]
Inputs: L=[0,-5,-10,-15], n=2
Output: [-10,-15]
Inputs: L=[1000,999,998,900,800,766,525,525,400,340,120,110,80,77,33,12,0,-15,-45,-250], n=2
Output: [525,525,400,340,120,110,80,77,33,12,0,-15,-45,-250]
Inputs: L=[10,5,5], n=1
Output: [5,5]
[131000000000, 96500000000, 82500000000, 76000000000, (7.7 billion more entries)]
L = [-5,-10,-13]
ve n=2
sonuçlanan test durumlarıyla[]
uğraşmanıza gerek kalmaz . " Ayrıca, giriş listesinin azalan (veya) sıralanması garanti edilir İsterseniz yükselen), yani [1,2,3]
başlamak için geçerli bir giriş listesi değildir (yükselen girişi seçmediğiniz sürece, bu durumda [1,2]
sonuç olacaktır).