# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
101531 | errorgorn | Adriatic (CEOI13_adriatic) | C++14 | 2070 ms | 9240 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <cstdio>
#include <utility>
#include <cstring>
#include <algorithm>
using namespace std;
typedef pair<int,int> ii;
int n;
ii arr[1505];
int asps[1505][1505];
void print(){
for (int x=0;x<n;x++){
for (int y=0;y<n;y++)
printf("%d ",asps[x][y]);
printf("\n");
}
}
int main(){
//freopen("input.txt","r",stdin);
memset(asps,63,sizeof(asps));
int a,b;
scanf("%d",&n);
for (int x=0;x<n;x++){
scanf("%d%d",&a,&b);
arr[x]=ii(a,b);
}
for (int x=0;x<n;x++)
for (int y=0;y<n;y++)
if ((arr[x].first<arr[y].first && arr[x].second<arr[y].second)||(arr[x].first>arr[y].first && arr[x].second>arr[y].second)) asps[x][y]=1;
for (int k=0;k<n;k++)
for (int x=0;x<n;x++)
for (int y=0;y<n;y++)
asps[x][y]=min(asps[x][y],asps[x][k]+asps[k][y]);
int _max;
for (int x=0;x<n;x++){
_max=0;
for (int y=0;y<n;y++){
if (x!=y) _max+=asps[x][y];
}
printf("%d\n",_max);
}
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |