Negatif olmayan bir tamsayı k
ve sıralı bir tamsayı listesi L
girdi ve çıktı olarak alan veya düzgün bir liste döndüren bir program veya işlev yazmalısınız M
.
M
Liste sıralanmış halde L
en fazla k
tamsayı elemanı eklenerek artan listeden oluşturulur . Girilen tamsayılar, maksimum ileri farkının M
olabildiğince küçük olacağı şekilde seçilmelidir . Bu en küçük değere "yumuşaklık" adını vereceğiz.
Listenin ileri farklar -1 3 8 11 15
vardır 4 5 3 4
ve maksimum ileri farktır 5
.
İle 2
eklemeleri düzgünlüğü 2 10 15
IS 4
ve olası bir çıkış olduğunu 2 6 10 11 15
ileri farklarla 4 4 1 4
.
Giriş
- Negatif olmayan bir tam sayı
k
. L
En az 2 elemanlı artan bir tamsayı listesi .
Çıktı
- Artan tam sayı listesi
M
. - Eğer birden fazla doğru cevap varsa, bunlardan tam olarak çıktısını alın (herhangi biri yeterlidir).
- Çözümünüz, bilgisayarımdaki herhangi bir örnek test vakasını bir dakikadan kısa bir sürede çözmelidir (sadece yakın vakaları test edeceğim. Ortalamanın altında bir bilgisayarım var.).
Örnekler
Girdi ( k
, L
) => Parantez içinde olası bir çıktı ve maksimum ileri farkı (çıktının bir parçası olmayan)
0, 10 20 => 10 20 (10)
2, 1 10 => 1 4 7 10 (3)
2, 2 10 15 => 2 6 10 11 15 (4)
3, 2 10 15 => 2 5 8 10 12 15 (3)
5, 1 21 46 => 1 8 15 21 27 33 39 46 (7)
5, 10 20 25 33 => 10 14 18 20 24 25 29 33 (4)
3, 4 4 6 9 11 11 15 16 25 28 36 37 51 61 => 4 4 6 9 11 11 15 16 22 25 28 36 37 45 51 59 61 (8)
15, 156 888 2015 => 156 269 382 495 608 721 834 888 1001 1114 1227 1340 1453 1566 1679 1792 1905 2015 (113)
8, -399 -35 -13 56 157 => -399 -347 -295 -243 -191 -139 -87 -35 -13 39 56 108 157 (52)
5, 3 3 3 => 3 3 3 3 (0)
Bu kod golf bu yüzden en kısa giriş kazanır.
rF<seq>
İki elementli kapları açmak için kullanmayı hiç düşünmemiştim .