Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First: nested reduce() solution in Clear category for [old] Count Inversion by polaris64
"use strict";
function countInversion(sequence){
return sequence
.reduce((a, x, i) =>
a + sequence
.slice(i + 1, sequence.length)
.reduce((a2, x2, i2) =>
x2 < x ? a2 + 1 : a2
, 0)
, 0);
}
var assert = require('assert');
if (!global.is_checking) {
assert.equal(countInversion([1, 2, 5, 3, 4, 7, 6]), 3, "Example");
assert.equal(countInversion([0, 1, 2, 3]), 0, "Sorted");
assert.equal(countInversion([99, -99]), 1, "Two numbers");
assert.equal(countInversion([5, 3, 2, 1, 0]), 10, "Reversed");
console.log("Coding complete? Click 'Check' to review your tests and earn cool rewards!");
}
Sept. 16, 2016
Comments: