第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

給定一個(gè)值,如100,給定一個(gè)數(shù)組,從數(shù)組中挑選出N個(gè)元素,這N個(gè)元素相加也是100

給定一個(gè)值,如100,給定一個(gè)數(shù)組,從數(shù)組中挑選出N個(gè)元素,這N個(gè)元素相加也是100

如數(shù)組:var arr = [99.1, 92.2, 60, 50,           49.5, 45.7, 25.1, 20,             17.4, 13, 10, 7, 2.1, 2, 1];找到和為100的數(shù)組元素:[60,20,10,7,2,1]
查看完整描述

1 回答

?
繁星點(diǎn)點(diǎn)滴滴

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超3個(gè)贊

function f($n, $arr) { //$n是目標(biāo)數(shù)字,$arr是數(shù)字組成的數(shù)組

    if (empty($arr)) return false; //如果數(shù)組沒(méi)有元素,返回

    if (in_array($n, $arr)) return [$n];//如果期望的值已經(jīng)存在,直接返回這個(gè)值

    foreach($arr as $k => $v) { //遍歷數(shù)組

        if ($v > $n) continue; //比指定數(shù)還大,過(guò)

        $copy = $arr; //復(fù)制數(shù)組

        unset($copy[$k]); //去掉復(fù)制數(shù)組中已經(jīng)被選中的數(shù)字

        $next = f($n - $v, $copy); //遞歸計(jì)算

        if(! empty($next)) return array_merge([$v], $next); //合并結(jié)果集

    }

    return false;//沒(méi)找到啊

}

$arr = [99.1, 92.2, 60, 50, 49.5, 45.7, 25.1, 20, 7.4, 13, 10, 7, 2.1, 2, 1];

$data = f(100, $arr);

print_r($data);//Array ( [0] => 60 [1] => 20 [2] => 13 [3] => 7 ) 

$data = f(105, $arr);

print_r($data);//Array ( [0] => 60 [1] => 20 [2] => 13 [3] => 10 [4] => 2 ) 


查看完整回答
反對(duì) 回復(fù) 2018-09-17
  • 1 回答
  • 0 關(guān)注
  • 1030 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)