freeCodeCamp/curriculum/challenges/english/10-coding-interview-prep/project-euler/problem-43-sub-string-divis...

1.8 KiB

id title challengeType forumTopicId dashedName
5900f3971000cf542c50feaa Problem 43: Sub-string divisibility 5 302100 problem-43-sub-string-divisibility

--description--

The number, 1406357289, is a 0 to 9 pandigital number because it is made up of each of the digits 0 to 9 in some order, but it also has a rather interesting sub-string divisibility property.

Let d1 be the 1st digit, d2 be the 2nd digit, and so on. In this way, we note the following:

  • d2d3d4 = 406 is divisible by 2
  • d3d4d5 = 063 is divisible by 3
  • d4d5d6 = 635 is divisible by 5
  • d5d6d7 = 357 is divisible by 7
  • d6d7d8 = 572 is divisible by 11
  • d7d8d9 = 728 is divisible by 13
  • d8d9d10 = 289 is divisible by 17

Find the numbers of all 0 to 9 pandigital numbers with this property.

--hints--

substringDivisibility() should return an array.

assert(Array.isArray(substringDivisibility()));

substringDivisibility() should return [ 1430952867, 1460357289, 1406357289, 4130952867, 4160357289, 4106357289 ].

assert.sameMembers(substringDivisibility(), [
  1430952867,
  1460357289,
  1406357289,
  4130952867,
  4160357289,
  4106357289
]);

You should not copy and return the array.

assert(
  !code.match(/(1430952867)|(1460357289)|(1406357289)|(4130952867)|(4160357289)|(4106357289)/)
);

--seed--

--seed-contents--

function substringDivisibility() {

  return [];
}

substringDivisibility();

--solutions--

// solution required