<?php
$char = array(2,3,4,5,6,7,8,9,'a','b','c','d','e','f','g','h','j','k','m','n','p','q','r','s','t','u','v','w','x','y','z');
$str1 = "00101";
$str2 = "00001";
$val = encode($val, $char);
$val2 = decode($val, $char);
function encode($val, $char){
$result = "";
while($val > 0){
$result = $char[ fmod($val, $base) ] . $result; $val = floor($val / $base); }
return ($result == "" ) ? 0 : $result;
}
function decode($str, $char){
$result = 0;
foreach($digit as $i => $value){
if(!isset($table[$value])) return false; $result += pow($base, $i) * $table[$value]; }
return $result;
}
PD9waHAKJGNoYXIgPSBhcnJheSgyLDMsNCw1LDYsNyw4LDksJ2EnLCdiJywnYycsJ2QnLCdlJywnZicsJ2cnLCdoJywnaicsJ2snLCdtJywnbicsJ3AnLCdxJywncicsJ3MnLCd0JywndScsJ3YnLCd3JywneCcsJ3knLCd6Jyk7Cgokc3RyMSA9ICIwMDEwMSI7CiRzdHIyID0gIjAwMDAxIjsKJHN0ciA9IHNwcmludGYoIiUwNWQiLCRzdHIxKSAuIHNwcmludGYoIiUwNWQiLCRzdHIyKTsKJHZhbCA9IGx0cmltKCRzdHIsICIwIik7CiR2YWwgPSBlbmNvZGUoJHZhbCwgJGNoYXIpOwokdmFsMiA9IGRlY29kZSgkdmFsLCAkY2hhcik7CgpmdW5jdGlvbiBlbmNvZGUoJHZhbCwgJGNoYXIpewogICAgJHJlc3VsdCA9ICIiOwogICAgJGJhc2UgPSBjb3VudCgkY2hhcik7CiAgICAgCiAgICB3aGlsZSgkdmFsID4gMCl7CiAgICAgICAgJHJlc3VsdCA9ICRjaGFyWyBmbW9kKCR2YWwsICRiYXNlKSBdIC4gJHJlc3VsdDsKICAgICAgICAkdmFsID0gZmxvb3IoJHZhbCAvICRiYXNlKTsKICAgIH0KCiAgICByZXR1cm4gKCRyZXN1bHQgPT0gIiIgKSA/IDAgOiAkcmVzdWx0Owp9CgpmdW5jdGlvbiBkZWNvZGUoJHN0ciwgJGNoYXIpewogICAgJHJlc3VsdCA9IDA7CiAgICAkYmFzZSA9IGNvdW50KCRjaGFyKTsKICAgICR0YWJsZSA9IGFycmF5X2ZsaXAoJGNoYXIpOwplY2hvIGltcGxvZGUoIiwiLCAkdGFibGUpIC4gIlxuIjsKICAgICRkaWdpdCA9IGFycmF5X3JldmVyc2UocHJlZ19zcGxpdCgnLy8nLCAkc3RyLCAtMSwgUFJFR19TUExJVF9OT19FTVBUWSkpOwogCiAgICBmb3JlYWNoKCRkaWdpdCBhcyAkaSA9PiAkdmFsdWUpewogICAgICAgIGlmKCFpc3NldCgkdGFibGVbJHZhbHVlXSkpIHJldHVybiBmYWxzZTsKICAgICAgICAkcmVzdWx0ICs9IHBvdygkYmFzZSwgJGkpICogJHRhYmxlWyR2YWx1ZV07CiAgICB9CiAgICAgCiAgICByZXR1cm4gJHJlc3VsdDsKfQo=
0,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