题目
a、b、c 为自然数,38a+40b+41c = 520,求 a+b+c 。
题目很简单。但是,不定方程通常有多组解:
a+b+c 会只有一种答案吗?
数学解法不太复杂
38a+40b+41c = 520
40a+40b+40c-2a+c=520
40(a+b+c) = 520+2a-c
a+b+c = 520/40 + (2a-c)/40
a+b+c = 13 + (2a-c)/40
0 ≤ a ≤ 520/38,0 ≤ 2a ≤ 520*2/38 = 27.368…
0 ≤ c ≤ 520/41 = 12.682…
必有,2a-c < 40
又 (2a-c)/40 必须为自然数,因此,2a-c = 0
所以,a+b+c = 13 + 0 = 13
附:Fortran 代码和运行结果
不定方程有5组解,a+b+c 的值都是 13
$freeform
! a、b、c 为自然数,38a+40b+41c = 520,求 a+b+c 。
! 2023-09-23
! szw_sh@163.com
integer a,b,c
do a=0,520/38
do b=0,520/40
do c=0,520/41
if(38*a+40*b+41*c.ne.520) cycle
m=m+1
k=a+b+c
write(*,'(i3.3,4(4x,a,i2))') m,'==> a =',a,'b = ',b,'c = ',c,'a+b+c = ',k
end do
end do
end do
end
001 ==> a = 0 b = 13 c = 0 a+b+c = 13
002 ==> a = 1 b = 10 c = 2 a+b+c = 13
003 ==> a = 2 b = 7 c = 4 a+b+c = 13
004 ==> a = 3 b = 4 c = 6 a+b+c = 13
005 ==> a = 4 b = 1 c = 8 a+b+c = 13