迷之RE

P1959 遗址

解决了
by 「已注销」 @ 2018-05-06 08:45:54


我也RE
by 光明正大 @ 2018-12-24 12:30:50


#include<algorithm> #include<iostream> using namespace std; int n,ans,x1,x2,y1,y2; struct point{ int x,y; bool operator<(const point &l) const { if(x==l.x) return y<l.y; return x<l.x; } } a[3030]; bool b[5050][5050]; int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i].x>>a[i].y,b[a[i].x][a[i].y]=1; sort(a+1,a+n+1); for(int i=1;i<=n;i++) { for(int j=i+1;j<=n;j++) { if((a[i].x-a[j].x)*(a[i].x-a[j].x)+(a[i].y-a[j].y)*(a[i].y-a[j].y)<ans) continue; if(i!=j) { x1=a[i].x+a[i].y-a[j].y,y1=a[i].y+a[j].x-a[i].x; if(!b[x1][y1]) continue; x2=a[j].x+a[i].y-a[j].y,y2=a[j].y+a[j].x-a[i].x; if(!b[x2][y2]) continue; ans=max(ans,(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); } } } cout<<ans; return 0; }
by 光明正大 @ 2018-12-24 12:31:04


```cpp #include<algorithm> #include<iostream> using namespace std; int n,ans,x1,x2,y1,y2; struct point{ int x,y; bool operator<(const point &l) const { if(x==l.x) return y<l.y; return x<l.x; } } a[3030]; bool b[5050][5050]; int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i].x>>a[i].y,b[a[i].x][a[i].y]=1; sort(a+1,a+n+1); for(int i=1;i<=n;i++) { for(int j=i+1;j<=n;j++) { if((a[i].x-a[j].x)*(a[i].x-a[j].x)+(a[i].y-a[j].y)*(a[i].y-a[j].y)<ans) continue; if(i!=j) { x1=a[i].x+a[i].y-a[j].y,y1=a[i].y+a[j].x-a[i].x; if(!b[x1][y1]) continue; x2=a[j].x+a[i].y-a[j].y,y2=a[j].y+a[j].x-a[i].x; if(!b[x2][y2]) continue; ans=max(ans,(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); } } } cout<<ans; return 0; } ```
by 光明正大 @ 2018-12-24 12:31:20


|