Triangle Partition HDU
阿新 • • 發佈:2018-12-20
- 題意:給3*n個點組成n個三角形不相鄰,並且沒有三點共線,直接按照x大小排序相鄰選擇三個即可
-
#include<bits/stdc++.h> using namespace std; #define maxn 10050 struct node { int x,y,id; } point[maxn]; bool cmp(node a,node b) { if(a.x==b.x)return a.y<b.y; return a.x<b.x; } int t,n; int main() { scanf("%d",&t); while(t--) { scanf("%d",&n); for(int i=1; i<=3*n; i++) { scanf("%d%d",&point[i].x,&point[i].y); point[i].id=i; } sort(point+1,point+3*n+1,cmp); for(int i=1;i<=3*n;i+=3) printf("%d %d %d\n",point[i].id,point[i+1].id,point[i+2].id); } return 0; }