算法分析:
1316,顯然1300是13的倍數,但16不是11的倍數,可以想到從1300上任意減去N個13的倍數其結果仍然是13的倍數,那麼只要16加上這個減去的N個13的倍數其和是11的倍數,這兩個數就解出來了,答案可能不只一個,但是我們只求一對解就可以了。
仔細觀察不難發現:(16+13*3)+(1300-13*3)=1316,但是我們需要用代碼實現:
復制代碼 代碼如下:
<?php
$n=1316;
$i=0;//減去的第N個13,進行初始化為0
$y=16+13*$i;//1316分出來的16加上N個13,這裡初始化為16
while($y%11!=0){//如果16加上N個13的和不能整除11
$i++;//再加一個13
$y=16+13*$i;
}
echo '$x='.($n-$y).'<br>';
echo '$y='.$y;
?>