let n = Console.ReadLine()
let input = Console.ReadLine().Split(" ") |> Array.map (int)
let result = input
|> Array.mapi (fun i v ->
let f = Array.fold (fun (acc: int*int) elem -> // acc = (a, preElem)
if elem - (snd acc) <= 1 then (fst acc + 1, elem)
else acc) (0, 0)
f
)
printf "%A" result
0 // return an integer exit code
на входе передаю следующие параметры
6
4 6 5 3 3 1
result по задумке должен иметь тип массива кортежей (int, int). вместо этого result имеет тип
val result : (int [] -> int * int) []
то есть это получается массив функций, которые даже не запускаются
как можно пофиксить?
@vshapenko твой ученик? отступы как у мастера!
Забыл передать аргументы в функцию f.
Обсуждают сегодня