Submission #850334

#TimeUsernameProblemLanguageResultExecution timeMemory
850334vjudge1Unija (COCI17_unija)C++17
80 / 100
1032 ms50376 KiB
//
//  main.cpp
//  GeneralCompetitiveProgramming
//
//  Created by Ali AlSalman on 12/07/2023.
//

#include <iostream>
#include <iomanip>
#include <algorithm>
#include <string>
#include <vector>
#include <queue>
#include <map>
#include <unordered_map>
#include <numeric>
#include <cmath>
#include <climits>

#define endl '\n'

using namespace std;

int main() {
    ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);
    
    int n;
    cin>>n;
    map<int, int> mp;
    for (int i = 0; i < n; i++) {
        int x, y;
        cin>>x>>y;
        x /= 2; y /= 2;
        mp[x] = max(mp[x], y);
    }
    
    long long size = 0;
    for (auto i = mp.rbegin(); i != mp.rend(); i++) {
        if (next(i) == mp.rend()) {
            size += (long long) i->first * i->second;
            break;
        }
        
        size += (long long) (i->first - next(i)->first) * i->second;
        if (i->second > next(i)->second) next(i)->second = i->second;
    }
    cout<<size * 4<<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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...