标签:hand design active == with sts contains point iostream
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cmath> 5 #include <algorithm> 6 using namespace std; 7 #define INF 0x7f7f7f 8 int n; 9 struct Point 10 { 11 double x,y; 12 }p[100001]; 13 bool cmp(Point a,Point b) 14 { 15 if(a.x==b.x) 16 { 17 return a.y<b.y; 18 } 19 return a.x<b.x; 20 } 21 double dis(Point a,Point b) 22 { 23 return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); 24 } 25 double getMin(int i) 26 { 27 double d=999999,di=0; 28 for(int j=i+1;j<n;j++) 29 { 30 di=dis(p[i],p[j]); 31 if(d>di)d=di; 32 else break; 33 } 34 return d; 35 } 36 int main() 37 { 38 int i,j,k; 39 double ans,f; 40 while(scanf("%d",&n)!=EOF) 41 { 42 if(!n)break; 43 for(i=0;i<n;i++) 44 { 45 scanf("%lf%lf",&p[i].x,&p[i].y); 46 } 47 sort(p,p+n,cmp); 48 ans=INF; 49 for(i=0;i<n-1;i++) 50 { 51 f=getMin(i); 52 if(ans>f)ans=f; 53 } 54 printf("%.2lf\n",ans/2.0); 55 } 56 return 0; 57 }
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 55105 Accepted Submission(s):
14543
标签:hand design active == with sts contains point iostream
原文地址:http://www.cnblogs.com/52why/p/7478098.html