# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
789991 | Amylopectin | Towns (IOI15_towns) | C++14 | 28 ms | 904 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 "towns.h"
#include <vector>
#include <algorithm>
using namespace std;
const int mxn = 210;
// struct we
// {
// int val,no;
// };
// struct patt
// {
// int to,diss;
// };
// bool cmp(const struct we &l,const struct we &r)
// {
// return l.val < r.val;
// }
// struct we sot[mxn] = {};
// vector<int> noo[mxn] = {};
// vector<struct patt> pat[mxn] = {};
int dis[mxn][mxn] = {},bot[mxn] = {},ru = 1,disd[mxn] = {};
int fima(int l,int r)
{
if(l > r)
{
return l;
}
return r;
}
int fimi(int l,int r)
{
if(l < r)
{
return l;
}
return r;
}
// int re(int cn,int tohe)
// {
// int i,j,fn,fm,be = 0;
// if(noo[cn].size() == 1)
// {
// bot[cn] = noo[cn][0];
// return 0;
// }
// bot[cn] = noo[cn][0];
// for(i=1; i<noo[cn].size(); i++)
// {
// fn = noo[cn][i];
// sot[i-1] = {(dis[0][bot[cn]] + dis[bot[cn]][fn] - dis[0][fn])/2,fn};
// }
// sort(sot,sot+noo[cn].size()-1,cmp);
// for(i=1; i<noo[cn].size()-1; i++)
// {
// if(sot[i-1].val != sot[i].val)
// {
// disd[ru] = dis[0][bot[cn]] - sot[i-1].val;
// pat[cn].push_back({ru,disd[ru] - disd[cn]});
// for(j=be; j<i; j++)
// {
// noo[ru].push_back(sot[j].no);
// }
// ru++;
// be = i;
// }
// }
// pat[cn].push_back({ru,disd[ru] - disd[cn]});
// disd[ru] = dis[0][bot[cn]] - sot[i-1].val;
// for(j=be; j<i; j++)
// {
// noo[ru].push_back(sot[j].no);
// }
// ru++;
// be = i;
// return 0;
// }
int hubDistance(int n, int sub)
{
int i,j,k,m,cn,cm,fn,fm,cma,ami = 0;
for(i=0; i<n; i++)
{
for(j=i+1; j<n; j++)
{
dis[i][j] = getDistance(i,j);
dis[j][i] = dis[i][j];
ami = fima(ami,dis[i][j]);
}
// if(i>0)
// noo[0].push_back(i);
}
for(i=1; i<n; i++)
{
for(j=i+1; j<n; j++)
{
cma = 0;
for(k=1; k<n; k++)
{
if(k == i || k == j)
{
continue;
}
cma = fima(cma,(dis[0][k] + dis[i][k] - dis[0][i])/2);
cma = fima(cma,(dis[0][k] + dis[j][k] - dis[0][j])/2);
}
ami = fimi(ami,cma);
}
}
return ami;
}
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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |