Submission #1151481

#TimeUsernameProblemLanguageResultExecution timeMemory
1151481Muhammad_AneeqBikeparking (EGOI24_bikeparking)C++20
100 / 100
81 ms16708 KiB
/*
بسم الله الرحمن الرحيم
Author:
                          (:Muhammad Aneeq:)
*/

#include <iostream>
#include <set>
#warning check the output
using namespace std;
inline void solve()
{
    int n;
    cin>>n;
    int x[n],y[n];
    for (auto& i:x)
        cin>>i;
    for (auto& i:y)
        cin>>i;
   int ans=0;
   set<int>s;
   for (int i=0;i<n;i++)
   {
        while (s.size()&&y[i])
        {
            int f=*rbegin(s);
            int z=min(x[f],y[i]);
            x[f]-=z;
            y[i]-=z;
            ans+=z;
            if (x[f]==0)
                s.erase(f);
        }
        if (x[i])
            s.insert(i);
   }
   for (int i=0;i<n;i++)
   {
        int z=min(y[i],x[i]);
        ans-=(y[i]-z);
   }
   cout<<ans<<endl;
}
int main()
{
    ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
    int t=1;
    for (int i=1;i<=t;i++)
    {
        solve();
    }
}

Compilation message (stderr)

Main.cpp:9:2: warning: #warning check the output [-Wcpp]
    9 | #warning check the output
      |  ^~~~~~~
#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...