Site icon 經倫記

馬騮分桃

馬騮分桃
馬騮分桃
馬騮分桃
馬騮分桃

『甲』『乙』『丙』『丁』『戊』伍祗『馬騮仔』相約摘桃,日落後斟酌,聽朝再蒞分桃.

入夜後『甲』『馬騮』先蒞, 左等右等其它『馬騮仔』都未蒞,先将桃『平分5份』, 仲多出『1個桃』, 佢覚得自己甘辛苦,多喫『1個桃』都應份, 喫多出蒞『1個桃』後兼拎走『1份桃』. 净低『4份桃』推翻埋一堆.

『乙』『馬騮』跟住蒞, 先将桃『平分5份』, 仲係多出『1個桃』, 喫多出蒞『1個桃』後再拎走『1份桃』. 净低『4份桃』推翻埋一堆.

其它『馬騮仔』相繼前後腳蒞, 『分桃伍份』,多出『壹個桃』喫咗落肚, 後拎走『壹份桃』. 净落『4份桃』堆翻埋一堆.

 

問『甲』『乙』『丙』『丁』『戊』伍祗『馬騮仔』至小摘幾多桃?

問『戊』馬騮走後,仲剩幾多桃?

 

此題出自英國物理學家『保羅·狄拉克』. 系電腦時代,變得喫生菜咁喫.

『分桃伍份』,多出『壹個桃』喫咗落肚, 後拎走『壹份桃』.

即『x = x – 1 – (x / 5)』

 

bool test(int x)

{

// 多出『壹個桃』吃咗落肚, 後拎走『壹份桃』.

if ((x % 5) != 1)// 『甲』

return false;

x = x – 1 – (x / 5);

 

if ((x % 5) != 1)// 『乙』

return false;

x = x – 1 – (x / 5);

 

if ((x % 5) != 1)// 『丙』

return false;

x = x – 1 – (x / 5);

 

if ((x % 5) != 1)// 『丁』

return false;

x = x – 1 – (x / 5);

 

if ((x % 5) != 1)//『戊』

return false;

return true;

}

自1開始,暴力測試.

    for (x = 1; ; ++x)  {

if (test(x) == true) {

printf(“桃總量=%i\r\n”, x);

break;

}

}

 

問『戊』馬騮走後, 仲剩幾多桃 ?

int caleX5 (int x){

// 多出『壹個桃』喫咗落肚, 後拎走『壹份桃』.

x = x – 1 – (x / 5);

x = x – 1 – (x / 5);

x = x – 1 – (x / 5);

x = x – 1 – (x / 5);

x = x – 1 – (x / 5);

return x;

}

 

 

Exit mobile version