当前位置: 代码迷 >> PHP >> 问一个逻辑运算算法的思路解决方法
  详细解决方案

问一个逻辑运算算法的思路解决方法

热度:74   发布时间:2016-04-28 18:39:58.0
问一个逻辑运算算法的思路


大概意思就是a是b的父级,b是c的父级,以此类推,无限顺延分级;
其中每一个成员都有一个对应的value值,这个value值为是1-30的随机数;
目前需要计算出,当我随意选择一个成员时,可以计算出这个成员以及向上所有的父级成员累计的value值总和是在哪一个成员身上value总值突破200的。


------解决方案--------------------
递归吧

//类里面的递归函数
function test($id,$num=0,$max=200){
        $sql="SELECT * FROM {{test}} WHERE id=$id";
$res=Yii::app()->db->createCommand($sql)->queryRow();
$num+=$res['value'];
if($num<$max){
            $name=self::test($res['pid'],$num);
}else{
            $name=$res['name'];
        }
return $name;
    }

//调用
$tr=new classtest();
echo $tr->test(7);
//结果 d

  相关解决方案