login
A134170
a(n) = the smallest positive integer which, expressed in the form d*q + r, satisfies q >= r for every d from 1 to n. In other words, when a(n) is divided by the numbers from 1 to n, the remainder is never more than the quotient.
1
1, 2, 3, 4, 10, 12, 21, 24, 36, 40, 60, 60, 84, 84, 112, 112, 144, 144, 180, 180, 240, 252, 308, 336, 336, 400, 432, 432, 504, 540, 540, 651, 660, 660, 792, 792, 792, 936, 936, 936, 1080, 1092, 1092, 1260, 1260, 1260, 1440, 1440, 1440, 1680
OFFSET
1,2
COMMENTS
If a prospective term is at least k(k-1) for a fixed value k, then the criterion will be satisfied for all d less than or equal to k.
Note that a(n) >= n, otherwise quotient for n would be 0 and so condition on remainder would not be satisfied. - Michel Marcus, Sep 04 2013
EXAMPLE
a(7)=21 because division by d=1 to 7 gives 21 r0, 10 r1, 7 r0, 5 r1, 4 r1, 3 r3 and 3 r0, respectively.
MAPLE
A134170 := proc(n)
local a, wrks, d;
for a from 1 do
wrks := true;
for d from 1 to n do
if modp(a, d) > floor(a/d) then
wrks := false;
break;
end if;
end do:
if wrks then
return a;
end if;
end do:
end proc: # R. J. Mathar, Sep 04 2013
PROG
(PARI) isok(m, n) = {for (d = 1, n, if (m\d < m%d, return (0)); ); return (1); }
a(n) = {m = 1; while (! isok(m, n), m++); m; } \\ Michel Marcus, Sep 03 2013
(Sage)
def FindM(n):
m=n-1
test=False
while not test:
test=True
m+=1
for d in [1..n]:
if Integer((m//d))<m.mod(d):
test=False
return m
[FindM(k) for k in [1..50]] # Tom Edgar, Sep 03 2013
CROSSREFS
Sequence in context: A076079 A229593 A196007 * A276560 A339577 A049548
KEYWORD
easy,nonn
AUTHOR
Bryce Herdt (mathidentity(AT)yahoo.com), Jan 12 2008
EXTENSIONS
More terms added and incorrect conjecture removed by Michel Marcus, Sep 03 2013
STATUS
approved