Andrey A, только хотел пошутить, что купюры сейчас только бонистов интересуют, как вспомнил Столовую N1
И благостно наспех накидал программку проверки. Она ещё количество способов считает
:
Код:
{N=vector(400);
for (n=2, 7, for (m=2,n-1,
if(gcd(n,m)==1,nm=n*m;for (l=1,nm+1,N[l]=0;);
for (i=0,nm,for (j=0,floor(n-i*n/m),
k=i*n+j*m+1; if (k<nm+2,N[k]++);
));
numf=0; last=0; for (l=2,nm+1, if (N[l]==0,numf++;last=l-1));
print (n," ",m," total ",numf," ( (n_1-1)(n_2-1)/2=",(n-1)*(m-1)/2,") max ", last," ( n_1n_2-n_1-n_2=",nm-n-m,")" );
);
))}
3 2 total 1 ( (n_1-1)(n_2-1)/2=1) max 1 ( n_1n_2-n_1-n_2=1)
4 3 total 3 ( (n_1-1)(n_2-1)/2=3) max 5 ( n_1n_2-n_1-n_2=5)
5 2 total 2 ( (n_1-1)(n_2-1)/2=2) max 3 ( n_1n_2-n_1-n_2=3)
5 3 total 4 ( (n_1-1)(n_2-1)/2=4) max 7 ( n_1n_2-n_1-n_2=7)
5 4 total 6 ( (n_1-1)(n_2-1)/2=6) max 11 ( n_1n_2-n_1-n_2=11)
6 5 total 10 ( (n_1-1)(n_2-1)/2=10) max 19 ( n_1n_2-n_1-n_2=19)
7 2 total 3 ( (n_1-1)(n_2-1)/2=3) max 5 ( n_1n_2-n_1-n_2=5)
7 3 total 6 ( (n_1-1)(n_2-1)/2=6) max 11 ( n_1n_2-n_1-n_2=11)
7 4 total 9 ( (n_1-1)(n_2-1)/2=9) max 17 ( n_1n_2-n_1-n_2=17)
7 5 total 12 ( (n_1-1)(n_2-1)/2=12) max 23 ( n_1n_2-n_1-n_2=23)
7 6 total 15 ( (n_1-1)(n_2-1)/2=15) max 29 ( n_1n_2-n_1-n_2=29)
9 8 total 28 ( (n_1-1)(n_2-1)/2=28) max 55 ( n_1n_2-n_1-n_2=55)
На небольших банкнотах подтверждается!
Надеюсь, ТС простит небольшой оффтопик