<?php
// 0-9 の重複無し順列なので、全部で 3,628,800 通り
// 数が多くないので全数チェックでも行ける
// 0 で始まる順列は362880 通り、
$answer = "";
$array = array(0,1,2,3,4,5,6,7,8,9);
$num = 0;
$num1 = 1000000 - 1;
$num2 = 9*8*7*6*5*4*3*2*1;
$num3 = 9;
while($num3 != 0)
{
while($num1 - $num2 >= 0)
{
$num1 -= $num2;
$num++;
}
echo $num." ".$num1."\n";
$answer .= $array[$num];
unset($array[$num]);
$array = array_values($array);
$num = 0;
$num2 /= $num3;
$num3--;
}
$answer .= $array[0];
echo "\n".$answer;
?>