rendered paste body<?php/*** master lock permutation calculator** joe@mrsomeone.com** 22 nov 2005*/?><html><head><title>master lock permutation calculator by joe</title><style type='text/css'>body { font-family: monospace; font-size: 100%;}</style></head><body><form action='' type='get'><input type='text' name='lnum' /> [last number]<br /><input type='submit' value=' Calculate... ' /></form><?phpif ( !isset($_GET['lnum']) ) foot();$ln = intval( $_GET['lnum'] );if ( ($ln < 0) || ($ln > 40) ) die();$magic = ($ln % 4);$fns = array();$sns = array();for ( $j = 0; $j < 40; $j++ ){ if ( ($j % 4) == $magic ) { $fns[] = $j; $tmp = ($j + 2); if ( $tmp > 39 ) $tmp = ($tmp-40); $sns[] = $tmp; }}sort($fns);sort($sns);$valid = 100;//print_r($fns);//print_r($sns);print '<br /><br />';print '<div style="float: left; border-right: 1px solid #666; padding-right: 1em; margin-right: 1em;"><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /></div>';for ( $j = 0; $j < 10; $j++ ) //fnum{ print '<div style="float: left; border-right: 1px solid #666; padding-right: 1em; margin-right: 1em;">'; for ( $k = 0; $k < 10; $k++) //snum { $skip = false; if ( // eliminate impossible permutations. ($fns[$j] - $sns[$k]) == -38 || ($fns[$j] - $sns[$k]) == -34 || ($fns[$j] - $sns[$k]) == 2 || ($fns[$j] - $sns[$k]) == 6 || ($sns[$k] - $ln) == -38 || ($sns[$k] - $ln) == 2 || ($ln - $sns[$k]) == -38 || ($ln - $sns[$k]) == 2 ) { $skip = true; $valid--; } $str = sprintf( '%2d %2d %2d', $fns[$j], $sns[$k], $ln ); if ( $skip ) print '<del>'; print str_replace( ' ', ' ', $str ); if ( $skip ) print '</del>'; print '<br />'; } print '</div>'; }print '<br style="clear: both;" /><br />total valid perms = ' . $valid . '';foot();function foot ( ){ print '</body>' . "\n" . '</html>'; die();}?>