Submission #624962

#TimeUsernameProblemLanguageResultExecution timeMemory
624962StavabSails (IOI07_sails)C++14
15 / 100
1090 ms3024 KiB
#include <iostream>
#include <vector>
#include <stack>
#include <utility>

using namespace std;

int main()
{
    int n;
    scanf("%d", &n);
    
    vector<int> rows(100005, 0);
    
    int h, k;
    stack<pair<int, int>> input;
    while(n--)
    {
        scanf("%d %d", &h, &k);
        
        input.push(make_pair(h, k));
    }
    
    long long sum = 0;
    vector<int> put(100005);
    while(!input.empty())
    {
        int toFill = input.top().second;
        int height = input.top().first;
        
        for(int i = 1; i <= height; i++)
            put[i] = 0;
        
        for(int i = 0; i <= 100005; i++)
        {
            for(int j = height; j > 0; j--)
            {
                if(!put[j] && rows[j] == i)
                {
                    sum += rows[j];
                    
                    put[j] = 1;
                    rows[j]++;
                    toFill--;
                }
                
                if(!toFill)
                    break;
            }
            
            if(!toFill)
                    break;
        }
        
        input.pop();
    }
    
    printf("%lld\n", sum);
    
    return 0;
}

Compilation message (stderr)

sails.cpp: In function 'int main()':
sails.cpp:11:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 |     scanf("%d", &n);
      |     ~~~~~^~~~~~~~~~
sails.cpp:19:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |         scanf("%d %d", &h, &k);
      |         ~~~~~^~~~~~~~~~~~~~~~~
#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...