import
java.io.*;
import
java.util.*;
class
GFG{
static
int
getArea(
int
x1,
int
y1,
int
x2,
int
y2,
int
x3,
int
y3)
{
return
Math.abs((x1 * (y2 - y3) +
x2 * (y3 - y1) +
x3 * (y1 - y2)) /
2
);
}
static
int
isInside(ArrayList<ArrayList<Integer>> triangle,
ArrayList<Integer> point)
{
ArrayList<Integer> A = triangle.get(
0
);
ArrayList<Integer> B = triangle.get(
1
);
ArrayList<Integer> C = triangle.get(
2
);
int
x = point.get(
0
);
int
y = point.get(
1
);
int
ABC = getArea(A.get(
0
), A.get(
1
),
B.get(
0
), B.get(
1
),
C.get(
0
), C.get(
1
));
int
BPC = getArea(x, y, B.get(
0
),
B.get(
1
), C.get(
0
),
C.get(
1
));
int
APC = getArea(A.get(
0
), A.get(
1
), x,
y, C.get(
0
), C.get(
1
));
int
APB = getArea(A.get(
0
), A.get(
1
), B.get(
0
),
B.get(
1
), x, y);
return
ABC == (APC + APB + BPC) ?
1
:
0
;
}
static
void
countPoints(ArrayList<ArrayList<Integer>> rectangle,
ArrayList<ArrayList<Integer>> triangle,
ArrayList<ArrayList<Integer>> points)
{
int
n = rectangle.size();
ArrayList<ArrayList<Integer>> triangle1 =
new
ArrayList<ArrayList<Integer>>();
for
(
int
i =
1
; i < n; i++)
triangle1.add(rectangle.get(i));
ArrayList<ArrayList<Integer>> triangle2 =
new
ArrayList<ArrayList<Integer>>();
for
(
int
i =
0
; i <
3
; i++)
{
triangle2.add(rectangle.get(i));
}
ArrayList<ArrayList<Integer>> triangle3 =
new
ArrayList<ArrayList<Integer>>();
for
(
int
i =
0
; i <
2
; i++)
{
triangle3.add(rectangle.get(i));
}
triangle3.add(rectangle.get(
3
));
ArrayList<ArrayList<Integer>> triangle4 =
new
ArrayList<ArrayList<Integer>>();
for
(
int
i = n -
2
; i < n; i++)
{
triangle4.add(rectangle.get(i));
}
triangle4.add(rectangle.get(
0
));
int
ans =
0
;
for
(ArrayList<Integer> point:points)
{
int
condOne = isInside(triangle1, point);
int
condTwo = isInside(triangle2, point);
int
condThree = isInside(triangle3, point);
int
condFour = isInside(triangle4, point);
int
condFive = isInside(triangle, point);
if
((condOne !=
0
|| condTwo !=
0
||
condThree !=
0
|| condFour !=
0
) &&
condFive !=
0
)
ans +=
1
;
}
System.out.println(ans);
}
public
static
void
main (String[] args)
{
ArrayList<ArrayList<Integer>> rectangle =
new
ArrayList<ArrayList<Integer>>();
ArrayList<ArrayList<Integer>> points =
new
ArrayList<ArrayList<Integer>>();
ArrayList<ArrayList<Integer>> triangle =
new
ArrayList<ArrayList<Integer>>();
rectangle.add(
new
ArrayList<Integer>(Arrays.asList(
6
,
5
)));
rectangle.add(
new
ArrayList<Integer>(Arrays.asList(
2
,
2
)));
rectangle.add(
new
ArrayList<Integer>(Arrays.asList(
2
,
1
)));
rectangle.add(
new
ArrayList<Integer>(Arrays.asList(
5
,
5
)));
points.add(
new
ArrayList<Integer>(Arrays.asList(
1
,
1
)));
points.add(
new
ArrayList<Integer>(Arrays.asList(
6
,
1
)));
points.add(
new
ArrayList<Integer>(Arrays.asList(
6
,
6
)));
points.add(
new
ArrayList<Integer>(Arrays.asList(
1
,
6
)));
triangle.add(
new
ArrayList<Integer>(Arrays.asList(
4
,
4
)));
triangle.add(
new
ArrayList<Integer>(Arrays.asList(
0
,
4
)));
triangle.add(
new
ArrayList<Integer>(Arrays.asList(
0
, -
2
)));
countPoints(points, triangle, rectangle);
}
}