| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 41438 | 王阡陌 | 【S】T1 | C++ | 通过 | 100 | 471 MS | 1848 KB | 1099 | 2026-04-23 08:14:50 |
#include<bits/stdc++.h> using namespace std; struct node { long long x,y; }a[100005]; bool cmp1(node p,node q) { return p.x+p.y<q.x+q.y; } bool cmp2(node p,node q) { return p.y-p.x>q.y-q.x; } int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin>>t; while(t--) { int n; cin>>n; for(int i=1;i<=n;i++) cin>>a[i].x>>a[i].y; sort(a+1,a+1+n,cmp1); long double ans=0; for(int i=1;i<n;i++) { long double p=abs(a[i].x-a[i+1].x)+abs(a[i].y-a[i+1].y); long double q=sqrt(1.0*(a[i].x-a[i+1].x)*(a[i].x-a[i+1].x)+1.0*(a[i].y-a[i+1].y)*(a[i].y-a[i+1].y)); ans=max(ans,p/q); } sort(a+1,a+1+n,cmp2); for(int i=1;i<n;i++) { long double p=abs(a[i].x-a[i+1].x)+abs(a[i].y-a[i+1].y); long double q=sqrt(1.000*(a[i].x-a[i+1].x)*(a[i].x-a[i+1].x)+1.000*(a[i].y-a[i+1].y)*(a[i].y-a[i+1].y)); ans=max(ans,p/q); } printf("%.12Lf\n",ans); } return 0; }