一筐雞蛋的lcm

問題

一筐雞蛋,
一個一個取正好取完,
兩個兩個取剩下一個,
三個三個取正好取完,
四個四個取剩下一個,
五個五個取少一個,
六個六個取剩下三個,
七個七個取正好取完,
八個八個取剩下一個,
九個九個取正好取完,
共多少雞蛋。 javascript

數學解法

第五個條件特殊,能夠改成:
五個五個取剩四個。java

數學符號

lcm(a,b,...,c)=x 最小公約數
x mod y = z 餘數 shell

數學描述

x mod 1 = 0
x mod 2 = 1
x mod 3 = 0
x mod 4 = 1
x mod 5 = 4
x mod 6 = 3
x mod 7 = 0
x mod 8 = 1
x mod 9 = 0

Solution

1 no use;code

step 1ip

1) x mod lcm(2,4,8) = 1
2) x mod lcm(3,7,9) = 0
3) x mod         5  = 4
4) x mod         6  = 3

step 2數學

1) x mod  8 = 1
2) x mod 63 = 0
3) x mod  5 = 4
4) x mod  6 = 3

step 3io

1),3)
min(x)=9 lcm(8,5)=40console

2),4)
min(x)=63 lcm(6,63)=126class

1) x mod 40  = 9
2) x mod 126 = 63

step 4程序

let
x = 40 * m + 9
x = 126 * n + 63


40 * m + 9 - (126 * n + 63) = 0

==> 40m - 126n = 54

if m=4 n=1
160-126=34

if m=4*4 n=4+1
4(160-126)-126=10

=> if m=2*4*4+4,n=2*(4+1)+1
40m - 126n = 10*2+34 = 54


=> n = 11; min(x)=126*11+63=1449

=> x mod min(lcm(40,126)>1449) = 1449

min(lcm(40,126)>1449)=1260*2=2520

==> x=n*2520+1449

程序

for(var i=1;i<99999;i++){
    if(i%2==1&&i%3==0&&i%4==1&&i%5==4&&i%6==3&&i%7==0&&i%8==1&&i%9==0){console.log(i)}
}
相關文章
相關標籤/搜索