Il tuo compito è prendere una matrice di numeri e un numero reale e restituire il valore in quel punto della matrice. Le matrici iniziano da e vengono contate in intervalli di . Il fatto è che in realtà interpoleremo tra gli elementi dato l '"indice". Come esempio:
Index: 1π 2π 3π 4π 5π 6π
Array: [ 1.1, 1.3, 6.9, 4.2, 1.3, 3.7 ]
Poiché è , dobbiamo fare la trigonometria obbligatoria, quindi useremo l'interpolazione del coseno usando la seguente formula:
dove:
- è il "index" input
- è il valore dell'elemento immediatamente prima dell '"indice"
- è il valore dell'elemento immediatamente dopo l '"indice"
- prende il suo angolo in radianti
Esempio
Dato [1.3, 3.7, 6.9], 5.3:
L'indice 5.3 è compreso tra e , quindi 1.3 verrà utilizzato per before
e 3.7 verrà utilizzato per after
. Mettendolo nella formula, otteniamo:
Che esce a 3.165
Appunti
- L'input e l'output possono essere in qualsiasi formato conveniente
- Si può presumere che il numero di input sia maggiore di e minore di
array length
* - Si può presumere che l'array di input sarà lungo almeno 2 elementi.
- Il risultato deve avere almeno due punti decimali di precisione, essere accurati entro 0,05 e supportare numeri fino a 100 per questa precisione / accuratezza. (i galleggianti a precisione singola sono più che sufficienti per soddisfare questo requisito)
Buon golf!