题目链接:
用皮克定理:
一个计算点阵中顶点在格点上的多边形面积公式:S=a+b/2-1
其中a表示多边形内部的点数,b表示多边形边界上的点数,s表示多边形的面积。
1 #include2 #include 3 #define ll long long 4 using namespace std; 5 struct point 6 { 7 double x,y; 8 }p[1010]; 9 int gcd(int a, int b)10 {11 return b==0?a:gcd(b,a%b);12 }13 14 double cross(point a,point b)15 {16 return a.x*b.y-a.y*b.x;17 }18 19 20 int main()21 {22 int n;23 double ans=0,tmp=0;24 while(scanf("%d",&n)&&n){25 ans=0;26 tmp=0;27 for(int i=0;i