|
|
A190022
|
|
Number of obtuse triangles, distinct up to congruence, on an n X n grid (or geoboard).
|
|
4
|
|
|
0, 0, 2, 12, 39, 95, 193, 355, 597, 943, 1426, 2071, 2904, 3977, 5306, 6956, 8963, 11370, 14225, 17587, 21515, 26053, 31310, 37282, 44061, 51785, 60436, 70127, 80939, 92952, 106267, 120982, 137124, 154841, 174225, 195366, 218394, 243457, 270505, 299749, 331441
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,3
|
|
LINKS
|
Eric Weisstein's World of Mathematics, Geoboard.
|
|
FORMULA
|
|
|
EXAMPLE
|
For n = 3 the two obtuse triangles are:
*.. *..
*.. *..
.*. ..*
|
|
MAPLE
|
Triangles:=proc(n) local TriangleSet, i, j, k, l, A, B, C; TriangleSet:={}: for i from 0 to n do for j from 0 to n do for k from 0 to n do for l from 0 to n do A:=i^2+j^2: B:=k^2+l^2: C:=(i-k)^2+(j-l)^2: if A^2+B^2+C^2<>2*(A*B+B*C+C*A) then TriangleSet:={op(TriangleSet), sort([sqrt(A), sqrt(B), sqrt(C)])}: fi: od: od: od: od: return(TriangleSet); end:
IsObtuseTriangle:=proc(T) if T[1]^2+T[2]^2<T[3]^2 or T[1]^2+T[3]^2<T[2]^2 or T[2]^2+T[3]^2<T[1]^2 then true else false fi: end:
a:=proc(n) local TriangleSet, ObtuseTriangleSet, i; TriangleSet:=Triangles(n): ObtuseTriangleSet:={}: for i from 1 to nops(TriangleSet) do if IsObtuseTriangle(TriangleSet[i]) then ObtuseTriangleSet:={op(ObtuseTriangleSet), TriangleSet[i]} fi: od: return(nops(ObtuseTriangleSet)); end:
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|