Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Surjection Strings solution in Clear category for Surjection Strings by Atadolfo
import assert from "assert";
var isometricStrings = (line1: string, line2: string): boolean => line2 == [...line1].reduce((r: string, l: string, i: number) => r.replace(new RegExp(l, "g"), (x: string, p: number) => p < i ? x : line2[i]), line1);
console.log('Example:');
console.log(isometricStrings('add', 'egg'));
// These "asserts" are used for self-checking
assert.equal(isometricStrings('add', 'egg'), true);
assert.equal(isometricStrings('foo', 'bar'), false);
assert.equal(isometricStrings('', ''), true);
assert.equal(isometricStrings('all', 'all'), true);
assert.equal(isometricStrings('gogopy', 'doodle'), false);
console.log("Coding complete? Click 'Check' to earn cool rewards!");
May 1, 2020