Here's my solution, finding 35 triangles.
#!/usr/bin/perl use strict; use warnings; # # Input, lines of the figure. # my @l = ( [qw [A B]], [qw [A C F I]], [qw [A D G J]], [qw [A E]], [qw [B C D E]], [qw [B F H J]], [qw [B I]], [qw [E G H I]], [qw [E J]], [qw [I J]], ); # Process the lines. Create a datastructure with nodes as keys. # For each node, record which nodes are reachable in one step, # and which nodes are passed to get there. my $g; foreach my $l (@l) { for (my $i1 = 0; $i1 < @$l-1; $i1++) { for (my $i2 = $i1+1; $i2 < @$l; $i2++) { $$g{$$l[$i1]}{$$l[$i2]} = {map {$_, 1} @$l[$i1+1 .. $i2-1] +}; $$g{$$l[$i2]}{$$l[$i1]} = {map {$_, 1} @$l[$i1+1 .. $i2-1] +}; } } } # Find all non-trivial 3-cycles. local $" = " - "; my @n = sort keys %$g; for (my $i1 = 0; $i1 < @n-2; $i1++) { for (my $i2 = $i1+1; $i2 < @n-1; $i2++) { for (my $i3 = $i2+1; $i3 < @n; $i3++) { # Form a cycle print "@n[$i1,$i2,$i3]\n" if $$g{$n[$i1]}{$n[$i2]} && $$g{$n[$i2]}{$n[$i3]} && $$g{$n[$i3]}{$n[$i1]} && # Avoid trivial cycle !$$g{$n[$i1]}{$n[$i2]}{$n[$i3] +} && !$$g{$n[$i1]}{$n[$i3]}{$n[$i2] +} && !$$g{$n[$i2]}{$n[$i3]}{$n[$i1] +}; } } } __END__ A - B - C A - B - D A - B - E A - B - F A - B - I A - B - J A - C - D A - C - E A - D - E A - E - G A - E - I A - E - J A - F - J A - G - I A - I - J B - C - F B - C - I B - D - J B - E - H B - E - I B - E - J B - F - I B - H - I B - I - J C - E - I D - E - G D - E - J E - G - J E - H - J E - I - J F - H - I F - I - J G - H - J G - I - J H - I - J
Perl --((8:>*

In reply to Re: How many triangles does your perl script "see"? by Perl Mouse
in thread How many triangles does your perl script "see"? by Skeeve

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.