# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1016767 | vjudge1 | Tenis (COCI20_tenis) | C++17 | 69 ms | 9556 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 <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int r[n][3],x;
for (int j=0;j<3;j++)
for (int i=0;i<n;i++)
{
cin>>x;
r[x-1][j]=i;
}
vector<int> bestr[n];
for (int i=0;i<n;i++)
{
int mn=r[i][0];
for (int j=1;j<3;j++)
mn=min(mn,r[i][j]);
bestr[mn].push_back(i);
}
int wins[n],court[3],cnt=0;
for (int i=n-1;i>=0;i--)
{
for (int j:bestr[i])
wins[j]=cnt;
cnt+=bestr[i].size();
for (int j=0;j<bestr[i].size();j++)
for (int k=j+1;k<bestr[i].size();k++)
{
int cor=-1,mn=n;
for (int c=0;c<3;c++)
{
if (r[bestr[i][j]][c]>i && r[bestr[i][k]][c]>i)
continue;
if (r[bestr[i][j]][c]==i)
if (mn>r[bestr[i][k]][c])
cor=c,mn=r[bestr[i][k]][c];
if (r[bestr[i][k]][c]==i)
if (mn>r[bestr[i][j]][c])
cor=c,mn=r[bestr[i][j]][c];
}
court[cor]++;
if (r[bestr[i][j]][cor]==i)
wins[bestr[i][j]]++;
else
wins[bestr[i][k]]++;
}
}
for (int i=0;i<3;i++)
cout<<court[i]<<' ';
cout<<endl;
for (int i=0;i<n;i++)
cout<<wins[i]<<' ';
cout<<endl;
return 0;
}
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... |