the set of points in the convex hull
ArrayList < ArrayList < Integer > > a = new ArrayList < ArrayList < Integer > > ( ) ; a . add ( new ArrayList < Integer > ( Arrays . asList ( 0 , 0 ) ) ) ; a . add ( new ArrayList < Integer > ( Arrays . asList ( 3 , - 1 ) ) ) ; a . add ( new ArrayList < Integer > ( Arrays . asList ( 4 , 5 ) ) ) ; a . add ( new ArrayList < Integer > ( Arrays . asList ( - 1 , 4 ) ) ) ; int n = a . size ( ) ; ArrayList < Integer > p = new ArrayList < Integer > ( Arrays . asList ( 100 , 100 ) ) ; addPoint ( a , p ) ;