面试题

来源:互联网 发布:diy软件 编辑:程序博客网 时间:2024/05/17 07:19

一、模拟扑克发牌,有52张扑克牌,我们给它编号,从1,2,3…52。一共52张牌。请使用数组装载这些牌,然后再打乱顺序输出。比如:43,2,18,21…3。

$ar = range(1, 54);shuffle($ar);print_r($ar);

二、公司要和QQ合作,提供接口给QQ,会发QQ号过来。请帮忙检测QQ的规则。如4323254,规则为:ABAB。5723723,规则为ABCABC。

$qqs = array('2343232', "4323254","22222","5123123","23412341234","2222222", '123456789');foreach($qqs as $qq) {  $len = strlen($qq);  $t = array();  echo "qq: $qq:: ";  for($i=0; $i<$len; $i++) {    if(($j = strpos($qq, $qq{$i}, $i+1)) != false) {      if(($p=substr($qq, $i, $j-$i)) == substr($qq, $j, $j-$i)) $t[] = $p;      while($j<$len-1 && $qq{$i} == $qq{++$j}) $t[] = substr($qq, $i, $j-$i+1);    }  }  usort($t, function($a, $b) { return strlen($b) - strlen($a); });  $t = current($t);  echo $d = 'A';  for($i=1; $i<strlen($t); $i++) {    if($t{$i} != $t{$i-1}) $d++;    echo $d;  }  echo PHP_EOL;}

三、假如我们现在要记录下网站中每一个flash小游戏被玩过多少次,每个游戏在一个单独的页面。
(a)请问在玩这些游戏的时候如何记录数据?
(b)如果计算出每个游戏被玩过多少次?(如果使用数据库的话,请写出SQL)

转载:http://bbs.csdn.net/topics/390528993