首頁 > 後端開發 > php教程 > 请问两个算法的题目

请问两个算法的题目

WBOY
發布: 2016-06-13 10:13:16
原創
910 人瀏覽過

请教两个算法的题目
1.已知矩形O的宽$ow,高$oh,在保持O的比例不变的情况下将O缩放为宽不大于$dw,高不大于$dh,且面积最大的矩形D,求矩形D的宽$nw和高$nh

2.a.实现函数function print($m,$n);$m为行,$n为列,返回一个二维数组,格式类似于下图
  1 2 3 4 5 
  10 9 8 7 6
  11 12 13 14 15
  20 19 18 17 16

  b.实现函数function convert($array),$array为一个二维数组,返回一个二维数组,于$array的关系如上图和下图对应
  16 17 18 19 20 
  15 14 13 12 11
  6 7 8 9 10
  5 4 3 2 1

请各位不吝赐教,谢谢!

------解决方案--------------------
这是学校老师布置的作业吧?
好好想一想,理清思路不会太难
1:就一个等比公式,判断下就好了

2:偶数,奇数行的规律

3:和上面的一样,求出最大数就行了。
------解决方案--------------------

PHP code
<?php // 1$rate=min($dw/$ow,$dh/$oh);$nw=$ow*$rate;$nh=$oh*$rate;// 2function _print($m,$n){    for($i=1;$i<$m;$i++){        $c=range(($i-1)*$n+1,$i*$n);        $arr[$i]=$i%2!=0?$c:array_reverse($c);    }    return $arr;}$array=_print(5,5);print_r($array);// 3function convert($array){    foreach(array_reverse($array) as $k=>$a){        $arr[$k]=array_reverse($a);    }    return $arr;}print_r(convert($array));<div class="clear">
                 
              
              
        
            </div>
登入後複製
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板