Kotlin filter lambda array usando el índice de iteración

Me gustaría filtrar una matriz en una matriz de cada enésimo elemento. Por ejemplo:

fun getNth(array: Array<Any>, n: Int): Array<Any> { val newList = ArrayList<Any>() for (i in 0..array.size) { if (i % n == 0) { newList.add(array[i]) } } return newList.toArray() } 

¿Existe una forma idiomática de hacerlo utilizando, por ejemplo, el .filter de Kotlin () y sin A) el aprovisionamiento de una nueva ArrayList y B) la iteración manual con un ciclo for / in?