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.

A306678 Number of distinct triangles with prime sides and largest side = prime(n).

Original entry on oeis.org

1, 3, 4, 6, 7, 11, 13, 18, 21, 22, 29, 30, 37, 46, 53, 56, 60, 71, 75, 87, 101, 105, 118, 124, 123, 139, 157, 173, 193, 209, 186, 207, 219, 244, 241, 264, 277, 291, 318, 329, 344, 371, 373, 405, 433, 465, 447, 440, 474, 511, 545, 563, 597, 602, 623, 645
Offset: 1

Views

Author

César Eliud Lozada, Mar 04 2019

Keywords

Examples

			For n=1, there is 1 triangle: {2, 2, 2}, with largest side prime(1) = 2.
For n=2, there are 3 triangles: {2, 2, 3}, {2, 3, 3}, {3, 3, 3}, with largest side prime(2) = 3.
For n=4, there are 6 triangles :{2, 7, 7}, {3, 5, 7}, {3, 7, 7}, {5, 5, 7}, {5, 7, 7}, {7, 7, 7}, with largest side prime(4) = 7. Total = 6 = a(4).
For n=5, largest side = prime(n) = 11. Triangles are {{2, 11, 11}, {3, 11, 11}, {5, 7, 11}, {5, 11, 11}, {7, 7, 11}, {7, 11, 11}, {11, 11, 11}}. Total = 7 = a(5).
		

Crossrefs

Programs

  • Maple
    #nType=1 for acute triangles, nType=2 for obtuse triangles
    #nType=0 for both triangles
    CountPrimeTriangles := proc (n, nType := 1)
      local aa, oo, j, k, sg, a, b, c, tt, lAcute;
      aa := {}; oo := {};
      a := ithprime(n);
      for j from n by -1 to 1 do
        b := ithprime(j);
        for k from j by -1 to 1 do
          c := ithprime(k);
          if a < b+c and abs(b-c) < a and b < c+a and abs(c-a) < b and c < a+b and abs(a-b) < c then
            lAcute := evalb(0 < b^2+c^2-a^2);
            tt := sort([a, b, c]);
            if lAcute then aa := {op(aa), tt} else oo := {op(oo), tt} end if
          end if
        end do
      end do;
      return sort(`if`(nType = 1, aa, `if`(nType = 2, oo, `union`(aa, oo))))
    end proc:
    # Alternative:
    with(NumberTheory):
    A306678:=proc(n)
        local a,i,p;
        if n=1 then
            1
        else
            a:=0;
            p:=ithprime(n);
            for i from pi(nextprime((p-1)/2)) to n do
                a:=a+i-pi(nextprime(p-ithprime(i)))+1;
            od;
                return a
    	fi;		
    end proc;
    seq(A306678(n),n=1..56); # Felix Huber, Apr 19 2025

Formula

a(n) = A306676(n) + A306677(n).