-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path32.php
35 lines (35 loc) · 876 Bytes
/
32.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
$times = microtime(true);
function is_unusual($num1, $num2, $num3) {
$array = array_map('intval', str_split($num1.$num2.$num3));
if(array_search(0, $array)){
return false;
}
if(count($array) == count( array_unique($array)) && count( array_unique($array)) == 9 ) {
return true;
}
else{
return false;
}
}
function is_pandigital($num) {
$array = array_map('intval', str_split($num));
if(count($array) == count(array_unique($array))) {
return true;
}
else{
return false;
}
}
for($i = 1;$i < 2000 ; ++$i){
if(is_pandigital($i)){
for($j = $i + 1; $j < 2000; ++$j){
if(is_unusual($i * $j,$i,$j)){
$sums[] = $i * $j;
}
}
}
}
$uniq_array = array_unique($sums);
echo array_sum($uniq_array)."\n";
echo microtime(true) - $times;