暑期集训出的第一道一血 感觉自己萌萌哒……
这道题本身并没有坑点 仅仅是翻译巨坑……
解大腿在做B 安学长在做E 我闲着也没事 就一个词一个词翻译F……
最后感觉……
题干大多数都看不懂……
也都没啥用……
大概呢……
就是给你n个点……
m条回路……
问你哪条回路是最外面的……
总之最后就是让你求哪个回路组成的图形面积最大……
考点就是多边形面积公式……
怕有误差就没加/2……
好像加了也能过吧……
WA了两次 一次是选错点了 一次是第一个点和最后一个点顺序反了……
#include<stdio.h>
#include<string.h>
struct point{
int x,y;
}p[];
int area(point a,point b){
return ((a.x*b.y)-(b.x*a.y));
}
int main(){
int T;
scanf("%d",&T);
while(T--){
int n;
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d%d",&p[i].x,&p[i].y);
int m,q;
int s[];
int maxn=-;
int flag;
scanf("%d",&m);
for(int i=;i<=m;i++){
scanf("%d",&q);
int now=;
scanf("%d",&s[]);
for(int j=;j<q;j++){
scanf("%d",&s[j]);
now+=area(p[s[j-]],p[s[j]]);
}
now+=area(p[s[q-]],p[s[]]);
if(now>maxn){
maxn=now;
flag=i;
}
}
printf("%d\n",flag);
}
return ;
}