Я решаю простую задачу на одном из сайтов, посвященных проблемам кодирования, где мне нужно найти недостающий элемент из массива.
Проблема состоит в том, что у вас есть an input array from 1 to N+1 and you have to find the missing element from that array.
For example, given array A such that:
A[0] = 2
A[1] = 3
A[2] = 1
A[3] = 5
the function should return 4, as it is the missing element.
Для решения этой проблемы я написал простую функцию, которая вычисляет результат
def sol(a: Array[Int]): Int = {
((a.length+1)*(a.length+2)/2)-a.sum
}
Однако при отправке решенияЯ получил правильность решения как 100%, но был шокирован, увидев результаты производительности на 60%.Кто-нибудь может указать на какую-либо часть этого однострочного кода, которая может быть оптимизирована, или есть какой-либо другой способ достижения 100% производительности для этого?
Примечание: я ищу код функционального стиля.