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.
%I A157790 #14 Feb 16 2025 08:33:09 %S A157790 1,1,2,2,3,3,4,3,4,4,4,3,4,3,4,4,4,4,6,4,5,5,4,4,7,4,5,5,6,4,8,4,6,5, %T A157790 6,4,8,4,6,5,7,4,8,4,6,6,6,4,8,4,8,5,6,4,8,5,7,5,6,4,8,5,6,6,6,5,8,4, %U A157790 6,5 %N A157790 Least number of lattice points on two opposite sides from which every point of a square n X n lattice is visible. %C A157790 That is, the points are chosen from the 2n points on two opposite sides of the n X n lattice. %H A157790 Eric Weisstein's World of Mathematics, <a href="https://mathworld.wolfram.com/VisiblePoint.html">Visible Point</a> %e A157790 a(8) = 3 because all 64 points are visible from (1,1), (1,2), and (8,2). %e A157790 a(9) = 4 because all 81 points are visible from (1,1), (1,2), (9,1), and (9,2). %t A157790 Join[{1}, Table[hidden=Table[{},{n^2}]; edgePts={}; Do[pt1=(c-1)*n+d; If[c==1||c==n, AppendTo[edgePts,pt1]; lst={}; Do[pt2=(a-1)*n+b; If[GCD[c-a,d-b]>1, AppendTo[lst,pt2]], {a,n}, {b,n}]; hidden[[pt1]]=lst], {c,n}, {d,n}]; edgePts=Sort[edgePts]; done=False; k=0; done=False; k=0; While[ !done, k++; len=Binomial[2n,k]; i=0; While[i<len, i++; s=Subsets[edgePts,{k},{i}][[1]]; If[Intersection@@hidden[[s]]=={}, done=True; Break[]]]]; k, {n,2,11}]] %Y A157790 Cf. A157639, A157720, A157791, A157792. %K A157790 hard,nonn %O A157790 1,3 %A A157790 _T. D. Noe_, Mar 06 2009 %E A157790 More terms from _Lars Blomberg_, Nov 06 2014