<?php
Class LRS{
/**
•@param array $texts
•Prints longest repeated substrings for each text */
public static function getAllLRS($texts){
$stringArr = array();
foreach($texts as $string){
$stringArr[] = self::LongestRepeatedSubstring($string);
}
return $stringArr;
}
public function LongestRepeatedSubstring($string){
if ($string == null)
return null;
$string_length = strlen($string);
$substrings = array();
for ($i=0; $i < $string_length; $i++){
$substrings[$i] = substr($string, $i);
}
sort($substrings);
$result = "";
for ($i = 0; $i < $string_length - 1; $i++){
$lcs = self::LongestCommonString($substrings[$i], $substrings[$i + 1]);
if (strlen($lcs) > strlen($result)){
$result = $lcs;
}
}
return $result;
}
function LongestCommonString($a, $b){
$n = min(strlen($a), strlen($b));
$lcs_result = "";
for ($i = 0; $i < $n; $i++){
if ($a[$i] == $b[$i]){
$lcs_result = $lcs_result.$a[$i];
}else{
break;
}
}
return $lcs_result;
}
}
print_r(LRS::getAllLRS(['ABCDEFG','banana','abcpqrabpqpq']));
?>
Luhn algorithm for IMEI Check public function __checkIMEI($imei){ if(strlen($imei)==15){ $imeia=($imei[1]*2); if(strlen($imeia)==2){$imeia=str_split($imeia,1); $imeia=$imeia[0]+$imeia[1]; } $imeib=($imei[3]*2); if(strlen($imeib)==2){$imeib=str_split($imeib,1); $imeib=$imeib[0]+$imeib[1]; } $imeic=($imei[5]*2); if(strlen($imeic)==2){$imeic=str_split($imeic,1); $imeic=$imeic[0]+$imeic[1]; } $imeid=($imei[7]*2); if(strlen($imeid)==2){$imeid=str_split($imeid,1); $imeid=$imeid[0]+$imeid[1];} $imeie=($imei[9]*2); if(strlen($imeie)==2){$imeie=str_split($imeie,1); $imeie=$imeie[0]+$imeie[1]; } $imeif=($imei[11]*2); if(strlen($imeif)==2){$imeif=str_split($imeif,1); $imeif=$imeif[0]+$imeif[1]; } $imeig=($imei[13]*2); if(strlen($imeig)==2){$imeig=str_split($imeig,1); $imeig=$imeig[0]+$imeig[1]; } $IMEI= ($ime...
Comments
Post a Comment