using System.Collections.Generic;
public static void Main()
var points = new List<Point>();
points.Add(new Point(i,j));
var targetTriangles = new List<Triangle>();
for(var i=0;i<points.Count;i++)
for(var j=i+1;j<points.Count;j++)
for(var k=j+1;k<points.Count;k++)
var tri = new Triangle(points[i],points[j],points[k]);
if(area>sizeCriterion) targetTriangles.Add(tri);
for(var i=0;i<targetTriangles.Count;i++)
Console.WriteLine(targetTriangles[i]);
public Point(int x,int y)
public static Point operator+(Point l,Point r)
return new Point(l.x+r.x, l.y+r.y);
public static Point operator-(Point l,Point r)
return new Point(l.x-r.x, l.y-r.y);
public override string ToString()
return Math.Abs(a.x*b.y-a.y*b.x)/2.0;
public Triangle(Point A,Point B,Point C)
public override string ToString()
return $"[{A}, {B}, {C} | Area: {Area()}]";