Meydan okuma
Bir sayı dizisi alan bir işlev oluşturun ve her öğeden dizideki henüz başka bir öğeden çıkarılmamış en düşük öğeyi çıkarın.
- En düşük değeri kullandıktan sonra, tekrar kullanılamaz.
- Dizideki sayılar ondalık sayılardır ve mutlaka tamsayı değildir.
Misal:
Input: [6, 4, 7, 8, 9, 2, 1, 4]
Next lowest value: Output:
[6, 4, 7, 8, 9, 2, 1, 4] [6, 4, 7, 8, 9, 2, 1, 4]
^ ^
6-1 = 5
[6, 4, 7, 8, 9, 2, -, 4] [5, 4, 7, 8, 9, 2, 1, 4]
^ ^
4-2 = 2
[6, 4, 7, 8, 9, -, -, 4] [5, 2, 7, 8, 9, 2, 1, 4]
^ ^
7-4 = 3
[6, -, 7, 8, 9, -, -, 4] [5, 2, 3, 8, 9, 2, 1, 4]
^ ^
8-4 = 4
[6, -, 7, 8, 9, -, -, -] [5, 2, 3, 4, 9, 2, 1, 4]
^ ^
9-6 = 3
[-, -, 7, 8, 9, -, -, -] [5, 2, 3, 4, 3, 2, 1, 4]
^ ^
2-7 = -5
[-, -, -, 8, 9, -, -, -] [5, 2, 3, 4, 3,-5, 1, 4]
^ ^
1-8 = -7
[-, -, -, -, 9, -, -, -] [5, 2, 3, 4, 3,-5,-7, 4]
^ ^
4-9 = -5
Final output: [5, 2, 3, 4, 3, -5, -7, -5]
Test Durumları
Input: [6, 4, 7, 8, 9, 2, 1, 4] => Output: [5, 2, 3, 4, 3, -5, -7, -5]
Input: [4, 7, 4, 9, -10, 8, 40] => Output: [14, 3, 0, 2, -18, -1, 0]
Input: [0.25, -0.5, 8, 9, -10] => Output: [10.25, 0, 7.75, 1, -19]
Input: [3, 4, 9, 1, 1, 1, -5] => Output: [8, 3, 8, 0, -2, -3, -14]
Bu kod golf, yani bayttaki en kısa cevap kazanır.