Submission #120447

# Submission time Handle Problem Language Result Execution time Memory
120447 2019-06-24T13:45:56 Z OptxPrime Kisik (COCI19_kisik) C++11
0 / 90
489 ms 16916 KB
#include <iostream>
#include <cmath>
#include<vector>
#include <algorithm>
#include <utility>
#include<stack>
#include<queue>

using namespace std;

#define pb push_back
#define mp make_pair




int main()
{
    long long n,k,u,v;
    vector<pair<long long, long long>> rec;
    priority_queue<pair<long long,long long>, vector<pair<long long, long long>>, greater<pair<long long, long long>>>pq;
    cin>>n>>k;
    for(int i=0;i<n;i++){
        cin>>u>>v;
        rec.pb( mp( u,v ) );
    }
    sort( rec.begin(), rec.end() );
    long long ans;
    long long currh=-1,currw=0;
    for( int i=0;i<k;i++ ){
        currw+=rec[i].first;
        currh=max( currh,rec[i].second );
        pq.push( mp( rec[i].second, rec[i].first ) );
    }
    ans=currh*currw;
    for( int i=k;i<n;i++ ){
            pair<long long,long long> maxx=pq.top();
        long long maxh=maxx.first;
        /// treba uzimat samo kad poboljsa povrsinu
        if( rec[i].second < maxh ){
                long long prevw=currw;
            currw-=maxx.second;
            currw+=rec[i].first;
            long long prevh=currh;
            currh=max( currh, rec[i].second );
            if( currw*currh < ans ){
                ans=currw*currh;
            pq.pop();
            pq.push( mp( rec[i].second, rec[i].first ) );
            currh=pq.top().first;
            }
            else currh=prevh, currw=prevw;
        }
    }

    cout<<ans<<endl;
    return 0;
}





















# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 380 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 216 ms 8628 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 314 ms 13216 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 185 ms 10352 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 238 ms 11960 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 489 ms 16916 KB Output isn't correct
2 Halted 0 ms 0 KB -