cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A046081 Number of integer-sided right triangles with n as a hypotenuse or leg.

Original entry on oeis.org

0, 0, 1, 1, 2, 1, 1, 2, 2, 2, 1, 4, 2, 1, 5, 3, 2, 2, 1, 5, 4, 1, 1, 7, 4, 2, 3, 4, 2, 5, 1, 4, 4, 2, 5, 7, 2, 1, 5, 8, 2, 4, 1, 4, 8, 1, 1, 10, 2, 4, 5, 5, 2, 3, 5, 7, 4, 2, 1, 14, 2, 1, 7, 5, 8, 4, 1, 5, 4, 5, 1, 12, 2, 2, 9, 4, 4, 5, 1, 11, 4, 2, 1, 13, 8, 1, 5, 7, 2, 8, 5, 4, 4, 1, 5, 13, 2, 2, 7
Offset: 1

Views

Author

Keywords

Comments

Pythagorean triples including primitive ones and non-primitive ones. For a certain n, it may be a leg or the hypotenuse in either a primitive Pythagorean triple, or a non-primitive Pythagorean triple, or both. - Rui Lin, Nov 02 2019

Examples

			From _Rui Lin_, Nov 02 2019: (Start)
n=25 is the least number which meets all of following cases:
1. 25 is a leg of a primitive Pythagorean triple (25,312,313), so A024361(25)=1;
2. 25 is the hypotenuse of a primitive Pythagorean triple (7,24,25), so A024362(25)=1;
3. 25 is a leg of a non-primitive Pythagorean triple (25,60,65), so A328708(25)=1;
4. 25 is the hypotenuse of a non-primitive Pythagorean triple (15,20,25), so A328712(25)=1;
5. Combination 1. and 3. means A046079(25)=2;
6. Combination 2. and 4. means A046080(25)=2;
7. Combination 1. and 2. means A024363(25)=2;
8. Combination 3. and 4. means A328949(25)=2;
9. Combination of 1., 2., 3., and 4. means A046081(25)=4. (End)
		

References

  • A. Beiler, Recreations in the Theory of Numbers. New York: Dover, pp. 116-117, 1966.

Crossrefs

Programs

  • Mathematica
    a[1] = 0; a[n_] := Module[{f}, f = Select[FactorInteger[n], Mod[#[[1]], 4] == 1&][[All, 2]]; (DivisorSigma[0, If[OddQ[n], n, n/2]^2]-1)/2 + (Times @@ (2*f+1) - 1)/2]; Array[a, 99] (* Jean-François Alcover, Jul 19 2017 *)
  • PARI
    a(n) = {oddn = n/(2^valuation(n, 2)); f = factor(oddn); for (k=1, #f~, if ((f[k,1] % 4) != 1, f[k,2] = 0);); n1 = factorback(f); if (n % 2, (numdiv(n^2)+numdiv(n1^2))/2 -1, (numdiv((n/2)^2)+numdiv(n1^2))/2 -1);} \\ Michel Marcus, Mar 07 2016
    
  • Python
    from sympy import factorint
    def a(n):
        p1, p2 = 1, 1
        for i in factorint(n).items():
            if i[0] % 4 == 1:
                p2 *= i[1] * 2 + 1
            p1 *= i[1] * 2 + 1 - (2 if i[0] == 2 else 0)
        return (p1 + p2)//2 - 1
    print([a(n) for n in range(1, 100)])  # Oleg Sorokin, Mar 02 2023

Formula

a(n) = A046079(n) + A046080(n). - Lekraj Beedassy, Dec 01 2003
From Rui Lin, Nov 02 2019: (Start)
a(n) = A024363(n) + A328949(n).
a(n) = A024361(n) + A024362(n) + A328708(n) + A328712(n). (End)

Extensions

Improved name by Bernard Schott, Jan 03 2019