제출 #1217101

#제출 시각아이디문제언어결과실행 시간메모리
1217101Joon_YorigamiArranging Shoes (IOI19_shoes)C++20
10 / 100
1096 ms12724 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vll = vector<ll>;

const int MAX_N = 200001;

ll count_swaps(vector<int> owo)
{
    ll n = owo.size();
    vll arr;
    for(auto num:owo)
        arr.push_back(num);
    vll cnt(MAX_N,-1);
    vector<vll> val(MAX_N,vll());
    ll curr=2;
    for(int i=0;i<n;i++)
    {
        if(arr[i]<0)
            continue;
        val[arr[i]].push_back(curr);
        arr[i]=curr;
        curr+=2;
    }
    for(int i=0;i<n;i++)
    {
        if(arr[i]>0)
            continue;
        cnt[abs(arr[i])]+=1;
        arr[i]=val[abs(arr[i])][cnt[abs(arr[i])]]-1;
    }
    ll ans = 0;
    for(int i=0;i<n;i++)
        for(int j=i+1;j<n;j++)
            ans += arr[i] > arr[j];
    return ans;
}
/*
int main()
{
    cout << count_swaps({-2, 2, 2, -2, -2, 2}) << endl;
}
*/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...