149842025-02-10 18:21:29horkaKörJáték (50 pont)cpp17Elfogadva 50/5016ms1268 KiB
#include <bits/stdc++.h>
using namespace std;
int n;
vector<int> v;
int tav(int i, int j)
{
    if(i==0 || j==0) return 0;
    return (i<=j?j-i:n+j-i);
}
int main()
{
    cin>>n;
    v.resize(n+1);
    vector<int> pos(n+2);
    for(int i=1; i<=n; i++)
    {
        cin>>v[i];
        pos[v[i]]=i;
    }
    int ossz=0;
    vector<int> ert(n+2);
    for(int i=1; i<n; i++)
    {
        ert[i]=tav(pos[i],pos[i+1]);
        ossz+=ert[i];
    }
    vector<int> ans(n+1, ossz);
    for(int i=1; i<n; i++)
    {
        ans[pos[i]]=ossz-ert[i]-ert[i-1]+tav(pos[i-1],pos[i+1])+tav(pos[n],pos[i]);
    }
    for(int i=1; i<=n; i++)
        cout<<ans[i]<<" ";
    cout<<"\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/01ms316 KiB
4Elfogadva2/21ms548 KiB
5Elfogadva2/21ms364 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/21ms316 KiB
10Elfogadva2/21ms316 KiB
11Elfogadva2/21ms404 KiB
12Elfogadva2/21ms500 KiB
13Elfogadva2/21ms316 KiB
14Elfogadva2/21ms316 KiB
15Elfogadva2/21ms316 KiB
16Elfogadva1/11ms316 KiB
17Elfogadva2/216ms1076 KiB
18Elfogadva2/216ms1140 KiB
19Elfogadva2/214ms1032 KiB
20Elfogadva2/214ms1072 KiB
21Elfogadva2/214ms888 KiB
22Elfogadva2/214ms1136 KiB
23Elfogadva2/214ms1152 KiB
24Elfogadva2/214ms1088 KiB
25Elfogadva2/216ms996 KiB
26Elfogadva2/214ms1148 KiB
27Elfogadva2/216ms1076 KiB
28Elfogadva2/216ms1084 KiB
29Elfogadva1/114ms1268 KiB