从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是连续的,JQK用11、12、13表示

本文阅读 1 分钟
首页 PHP笔记 正文
  1. //我的理解: 既然是顺子,那么肯定没有对子,找到最小的值后,顺序加1看是否存在,如果都存在,则为顺
  2. //如果我写的话是这样:
  3. function eatChicken(arr $data)
  4. {
  5. $min = min($data);
  6. for ($i = $min; $i < $min + 5; ++$i) {
  7. if (!in_array($i, $data)) {
  8. return false;
  9. }
  10. }
  11. return true;
  12. }
  13. var_dump(eatChicken([1, 3, 5, 2, 4]));
  14. var_dump(eatChicken([10, 13, 11, 12, 14]));
  15. var_dump(eatChicken([1, 3, 5, 7, 9]));
  16. https://github.com/hookover/php-engineer-interview-questions/issues/8
  17. @johson
  18. function eatDuck(array $arr)
  19. {
  20. $count = count($arr);
  21. if (count(array_unique($arr)) != $count) {
  22. return false;//对子
  23. }
  24. if (max($arr) - min($arr) != $count - 1) {
  25. return false;
  26. }
  27. return true;
  28. }
  29. var_dump(eatDuck([1, 3, 5, 2, 4]));
  30. var_dump(eatDuck([10, 13, 11, 12, 14]));
  31. var_dump(eatDuck([1, 3, 5, 7, 9]));
  32. //有更好方法请补充,大神们来个不用内置函数的版本
解压密码: detechn或detechn.com

免责声明

本站所有资源出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。

本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户自行鉴别,做一个有主见和判断力的用户。

本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。

获取当前客户端的IP地址,并判断是否在(1.1.1.1,255.255.255.254)
« 上一篇 01-30
找出数组中不重复的值[1,2,3,3,2,1,5]
下一篇 » 01-30

发表评论