Lots of Triangles
题号:NC24149
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Farmer John is thinking of selling some of his land to earn a bit of extra income. His property contains n trees (3≤N≤300), each described by a point in the 2D plane, no three of which are collinear. FJ is thinking about selling triangular lots of land defined by having trees at their vertices; there are of course L=(N3) such lots he can consider, based on all possible triples of trees on his property.
A triangular lot has value v if it contains exactly v trees in its interior (the trees on the corners do not count, and note that there are no trees on the boundaries since no three trees are collinear). For every v=0…N−3, please help FJ determine how many of his L potential lots have value v.

输入描述:

The first line of input contains N.
The following N lines contain the x and y coordinates of a single tree; these are both integers in the range 0…1,000,000.

输出描述:

Output N−2 lines, where output line i contains a count of the number of lots having value i−1.
示例1

输入

复制
7
3 6
17 15
13 15
6 12
9 1
2 7
10 19

输出

复制
28
6
1
0
0