Решение
import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter
fun main() {
val reader = BufferedReader(InputStreamReader(System.`in`))
val writer = BufferedWriter(OutputStreamWriter(System.out))
val (n, r) = reader.readLine().split(" ").map { it.toLong() }
val monuments = reader.readLine().split(" ").map { it.toLong() }
var ans: Long = 0
var j = 0
for (i in 0 until n.toInt()) {
j = maxOf(j, i + 1)
while (j < n.toInt() && monuments[j] - monuments[i] <= r) {
j++
}
if (j < n.toInt()) {
ans += (n.toInt() - j).toLong()
}
}
writer.write(ans.toString())
writer.flush()
reader.close()
writer.close()
}