Skip to content

Instantly share code, notes, and snippets.

@vdonchev
Created June 30, 2024 19:30
Show Gist options
  • Save vdonchev/8cb21deccaf49a8e0bf34cb80893432d to your computer and use it in GitHub Desktop.
Save vdonchev/8cb21deccaf49a8e0bf34cb80893432d to your computer and use it in GitHub Desktop.
<?php
$source = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
for ($i = 0; $i < count($source); $i++) {
for ($j = 0; $j < count($source); $j++) {
if ($j == $i) {
continue;
}
$numA = intval($source[$i] . $source[$j]);
if ($numA < 10) {
continue;
}
for ($k = 0; $k < count($source); $k++) {
if ($k == $i || $k == $j) {
continue;
}
for ($l = 0; $l < count($source); $l++) {
if ($l == $k || $l == $i || $l == $j) {
continue;
}
for ($m = 0; $m < count($source); $m++) {
if ($m == $l || $m == $k || $m == $i || $m == $j) {
continue;
}
$used = array($i, $j, $k, $l, $m);
$a = intval($i . $j);
$b = intval($k . $l . $m);
if ($b < 100) {
unset($used);
continue;
}
$result = $a * $b;
if ($result < 10000 || $result > 99999) {
unset($used);
continue;
}
$result .= '';
$result = str_split($result);
$result = array_map('intval', $result);
if (count(array_unique($result)) !== 5) {
unset($used);
continue;
}
if (count(array_diff($used, $result)) !== 5) {
unset($used);
continue;
}
var_dump(
sprintf("%d%d * %d%d%d = %d%d%d%d%d", $used[0], $used[1], $used[2], $used[3], $used[4],
$result[0], $result[1], $result[2], $result[3], $result[4])
);
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment