巅云智能建站平台搭建版(创业流派版)火爆上线,毕生受权!新增:文章智能收罗+全站真静态打包+都会分站+智能小法式+不法词过滤+H5自顺应+智能链词等功效功效概况
赞助文档Help

操纵PHP判定是不是是连乘数字串的体例示例

一佰互联网站建造(www.taishanly.com) 宣布日期 2020-04-25 14:41:31 阅读数: 98

描写

有如许一道题,给出一个数字串A,须要判定A是不是为连乘数字串,连乘数字串的界说便是一个数字串能够拆分红多少个数字,后面的数字(从第N个数字起头)为后面2个数字的乘积。

举例

(1) "122" --- 能够拆成[1|2|2]

成果: 1×2=2  (连乘数字串)

(2) "1122242" --- 能够拆成[11|22|242]

成果:  11×22=242   (连乘数字串)

(3) "1224832256" --- 能够拆成 [1|2|2|4|8|32|256]

成果: 1×2=2,2×2=4,2×4=8,4×8=32,8×32=256 (连乘数字串)

(4) "234547898185239692" --- 能够拆成 [23454|7898|185239692]

成果:23454×7898=185239692 (连乘数字串)

(5) "113" 能够拆成 [1|1|3]

成果:1×1 != 3  (非连乘数字串)

代码

/**
 * 判定是不是连乘数字串函数
* @param $strNum
 * @return bool
 **/
function isExec($strNum) {
 $str = (string)$strNum;

 for ($i = 0; $i < strlen($str); $i++) {
  $k = 1;

  for ($j = $i + 1; $j < strlen($str); $j++) {

   $a_i = 0;
   $b_i = $i + 1;
   $p_i = $i + 1;
   $m_i = $k++;
   $c_i = $b_i + $m_i;
   $res = false;
   $formula = [];

   while (1) {
    $a = substr($str, $a_i, $p_i);
    $b = substr($str, $b_i, $m_i);

    $n = $a * $b;

    $c = substr($str, $c_i, strlen($n));

    //echo "<br/>" . $a . "*" . $b . "=" . $n . "->" . $c . "<br/>";

    if($c){
     $formula[] = $a . "*" . $b . "=" . $n;
    }

    if ($c === false || $c === "") {
     break;
    }

    if (intval($n) == intval($c)) {
     $p_i = strlen($b);
     $m_i = strlen($n);
     $a_i = $b_i;
     $b_i = $c_i;
     $c_i = $b_i + $m_i;
     $res = true;
    } else {
     $res = false;
     break;
    }
   }

   if ($res === true) {
    print_r($formula);
    return true;
   }

   //var_dump($res) . "<br/>";
  }

 }

 return false;
}

履行

var_dump(isExec("1224832256"));

//运转成果
Array
[
   [0] => 1*2=2
   [1] => 2*2=4
   [2] => 2*4=8
   [3] => 4*8=32
   [4] => 8*32=256
]
bool(true)

var_dump(isExec("234547898185239692"));

//运转成果
Array
[
   [0] => 23454*7898=185239692
]
bool(true)

var_dump(isExec("1122242"));

//运转成果
Array
[
   [0] => 11*22=242
]
bool(true)

var_dump(isExec("11234"));

//运转成果
bool(false)

总结

以上便是这篇文章的全数内容了,但愿本文的内容对大师的进修或任务能带来必然的赞助,若有疑难大师能够留言交换,感谢大师对网页设想的撑持。

一佰互联是天下着名建站品牌办事商,咱们有九年、网站建造、网页设想、php开辟和域名注册及假造主机办事经历,供给的办事更是天下着名。最近几年来还整合团队上风自立开辟了可视化多用户”“3.0平台版,拖拽排版网站建造设想,轻松完成pc站、手机微网站、小法式、APP一体化全网营销网站扶植 ,已胜利的为天下上百家收集公司供给自助建站平台搭建办事。

相干消息more

20
11月
若何做企业网站完成一秒内翻开

在拜候网站进程中,会发明并非全数的网站都能很快地翻开,特别是内容丰硕、代价较高的网站,加载速率很慢休会结果就削减了,为了避免这类景象,在做站... >>概况

26
03月
法式员若何入门.NET for Linux?

简介:根基上,当你晓得了一个法式员的首选操纵体系是甚么的同时,你就能够预测出他们利用的是甚么编程说话。比方,若是法式员利用的是Windows... >>概况

11
04月
设想气概固然多,学会妙手这两招就行! - 网

@Martin-K :设想中的气概变更多端,很大水平上成了设想师碰到的最大瓶颈,本期将从色采和情势的角度简略的论述设想中的气概变更把控!接待... >>概况

27
03月
抖音2018很火的伤感说说,句句痛心入骨,让

简介:一、每一个话题都是我开的,每句开头也是我,本来不是支出就会有报答,本来错过真的是错过。二、枕头里,藏满了发了霉的梦,梦里,住满了没法具有... >>概况

高端网站扶植

美工统筹SEO,为企业电子商务营销助力!

德律风:

023-85725751
建站

产物

域名注册 假造主机 云办事器 企业邮局
智能建站 APP打包 微站/小法式 创业平台
网站推行 媒体营销 智能收罗 AI机械人
400德律风 短信营销 店销机械人
私家定制 流派网站