Submission #1305274

#TimeUsernameProblemLanguageResultExecution timeMemory
1305274bronze_coderSails (IOI07_sails)C++20
40 / 100
1097 ms1464 KiB
#include <bits/stdc++.h>
using namespace std;

int main(){
    int n;
    cin >> n;
    vector<long long> a;
    for(int i=0;i<n;i++){
        int h,k;
        cin >> h >> k;
        while(a.size()<h){
            a.push_back(0);
        }
        for(int i=0;i<k;i++){
            a[h-1-i]++;
        }
    }

    while(true){
        int z = 0;
        for(int i=0;i<a.size()-1;i++){
            if(a[i]<a[i+1]){
                long long x = a[i]+a[i+1];
                a[i+1] = x/2;
                a[i] = x-x/2;
                z = 1;
                break;
            }
        }
        if(z==0){
            break;
        }
    }
    long long ans = 0;
    for(int i:a){
        ans += i*(i-1)/2;
    }
    cout << ans << 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...
#Verdict Execution timeMemoryGrader output
Fetching results...