Submission #114179

#TimeUsernameProblemLanguageResultExecution timeMemory
114179zubecSails (IOI07_sails)C++14
40 / 100
1074 ms6640 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;

vector <pair<int, int> > vec;

int n;

multiset<int> q;

int main(){
    ios_base::sync_with_stdio(0);cin.tie(0);

    cin >> n;
    for (int i = 1; i <= n; i++){
        int h, k;
        cin >> h >> k;
        vec.push_back({h, k});
    }
    sort(vec.begin(), vec.end());
    int mxh = 0;
    for (int i = 0; i < vec.size(); i++){
        while(mxh < vec[i].first){
            ++mxh;
            q.insert(0);
        }
        vector <int> vec2;
        while(vec[i].second > 0){
            int kol = *q.begin();
            q.erase(q.begin());
            vec2.push_back(kol+1);
            --vec[i].second;
        }
        for (int j = 0; j < vec2.size(); j++)
            q.insert(vec2[j]);
    }
    ll ans = 0;
    while(!q.empty()){
        ans += *q.begin()*1ll*(*q.begin()-1)/2;
        q.erase(q.begin());
    }
    cout << ans;

}

Compilation message (stderr)

sails.cpp: In function 'int main()':
sails.cpp:23:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = 0; i < vec.size(); i++){
                     ~~^~~~~~~~~~~~
sails.cpp:35:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int j = 0; j < vec2.size(); j++)
                         ~~^~~~~~~~~~~~~
#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...
#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...