Submission #786982

#TimeUsernameProblemLanguageResultExecution timeMemory
786982winter0101Coin Collecting (JOI19_ho_t4)C++14
100 / 100
38 ms6064 KiB
#include<bits/stdc++.h>
#define fastio ios_base::sync_with_stdio(false);cin.tie(nullptr);
using namespace std;
const int maxn=1e6;
using ll=long long int;
int a[100009][3];
int main()
{
    fastio
    //freopen(".INP","r",stdin);
    //freopen(".OUT","w",stdout);
    //solve();
    int n;
    cin>>n;
    long long ans=0;
    for (int i=1;i<=n*2;i++){
        long long x,y;
        cin>>x>>y;
        long long x2,y2;
        if (x>=n)x2=n;
        else if (x<=1)x2=1;
        else x2=x;
        if (y>=2)y2=2;
        else y2=1;
        ans=ans+abs(x-x2)+abs(y-y2);
        a[x2][y2]++;
        //cout<<x2<<" "<<y2<<'\n';
    }
    for (int i=1;i<=n;i++){
        a[i][1]--;
        a[i][2]--;
        while (a[i][2]<0&&a[i][1]>0){
            ans++;
            a[i][1]--;
            a[i][2]++;
        }
        while (a[i][1]<0&&a[i][2]>0){
            ans++;
            a[i][1]++;
            a[i][2]--;
        }
        ans=ans+abs(a[i][1])+abs(a[i][2]);
        a[i+1][1]+=a[i][1];
        a[i+1][2]+=a[i][2];
    }
    cout<<ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...