|
PROG
|
(PARI)
concatint(a, b)=eval(concat(Str(a), Str(b)))
istriang(x)=issquare(8*x+1)
{for(n=1, 10^7, a=concatint(n+1, n); if(istriang(a), print(a)))}
(Python)
from math import isqrt
def istri(n): t = 8*n+1; return isqrt(t)**2 == t
def afind(klimit, kstart=0):
strk = "0"
for k in range(kstart, klimit+1):
strkp1 = str(k+1)
t = int(strkp1 + strk)
if istri(t):
print(t, end=", ")
strk = strkp1
(Python) # alternate version
def isconcat(n):
if n < 10: return False
s = str(n)
mid = (len(s)+1)//2
lft, rgt = int(s[:mid]), int(s[mid:])
return lft - 1 == rgt
def afind(tlimit, tstart=0):
for t in range(tstart, tlimit+1):
trit = t*(t+1)//2
if isconcat(trit):
print(trit, end=", ")
|