Submission #147731

#TimeUsernameProblemLanguageResultExecution timeMemory
147731nicolaalexandraTurnir (COCI17_turnir)C++14
100 / 100
815 ms25792 KiB
#include <iostream>
#include <algorithm>
#define DIM 2000000
using namespace std;

pair <int,int> v[DIM];
int sol[DIM],p[DIM];
int n,i,maxi,m,j;
int main (){

    cin>>n;
    m = n, n = (1<<n);
    for (i=1;i<=n;i++){
        cin>>v[i].first;
        v[i].second = i;
    }
    for (i=2;i<=n;i++)
        p[i] = p[i/2]+1;
    sort (v+1,v+n+1);
    j = 1;
    for (i=1;i<=n;i++){
        while (j < n && v[j+1].first <= v[i].first)
            j++;

        sol[v[i].second] = m-p[j];
    }
    for (i=1;i<=n;i++)
        cout<<sol[i]<<" ";

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...