Submission #268580

# Submission time Handle Problem Language Result Execution time Memory
268580 2020-08-16T13:00:44 Z A02 Teams (IOI15_teams) C++14
34 / 100
4000 ms 16524 KB
#include "teams.h"
#include <vector>
#include <set>
#include <algorithm>
#include <utility>
#include <queue>
#include <iostream>

using namespace std;

vector<pair<int, int> > intervals;

void init(int N, int A[], int B[]) {

    for (int i = 0; i < N; i++){
        intervals.push_back(make_pair(A[i], B[i]));
    }

    sort(intervals.begin(), intervals.end());
}

int can(int M, int K[]) {

    vector<long long> projects;

    for (int i = 0; i < M; i++){
        projects.push_back(K[i]);
    }

    sort(projects.begin(), projects.end());

    priority_queue<pair<int, int> > interval_queue;

    int c_student = 0;

    for (int i = 0; i < M; i++){
        int to_fill = projects[i];

        while (c_student < intervals.size() && intervals[c_student].first <= projects[i]){

            interval_queue.push(make_pair(-intervals[c_student].second, intervals[c_student].first));
            c_student++;

        }

        while (to_fill > 0 && !interval_queue.empty()){
            pair<int, int> f = interval_queue.top();
            //cout << f.first << ' ' << f.second << endl;
            if (-f.first >= projects[i]){
                to_fill--;
            }
            interval_queue.pop();
        }

        if (to_fill != 0){
            //cout << 0 << endl;
            return 0;
        }

    }
   // cout << 1 << endl;
	return 1;
}

Compilation message

teams.cpp: In function 'int can(int, int*)':
teams.cpp:37:33: warning: conversion from '__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type' {aka 'long long int'} to 'int' may change value [-Wconversion]
   37 |         int to_fill = projects[i];
      |                                 ^
teams.cpp:39:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |         while (c_student < intervals.size() && intervals[c_student].first <= projects[i]){
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 512 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 384 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 1 ms 256 KB Output is correct
11 Correct 1 ms 256 KB Output is correct
12 Correct 2 ms 384 KB Output is correct
13 Correct 2 ms 384 KB Output is correct
14 Correct 2 ms 384 KB Output is correct
15 Correct 2 ms 384 KB Output is correct
16 Correct 1 ms 376 KB Output is correct
17 Correct 1 ms 256 KB Output is correct
18 Correct 1 ms 384 KB Output is correct
19 Correct 1 ms 384 KB Output is correct
20 Correct 1 ms 256 KB Output is correct
21 Correct 1 ms 384 KB Output is correct
22 Correct 1 ms 384 KB Output is correct
23 Correct 1 ms 256 KB Output is correct
24 Correct 1 ms 256 KB Output is correct
25 Correct 1 ms 256 KB Output is correct
26 Correct 1 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 17 ms 2296 KB Output is correct
2 Correct 17 ms 2220 KB Output is correct
3 Correct 32 ms 3444 KB Output is correct
4 Correct 21 ms 3820 KB Output is correct
5 Correct 17 ms 2296 KB Output is correct
6 Correct 20 ms 3064 KB Output is correct
7 Correct 13 ms 3064 KB Output is correct
8 Correct 16 ms 3064 KB Output is correct
9 Correct 23 ms 4980 KB Output is correct
10 Correct 21 ms 4596 KB Output is correct
11 Correct 23 ms 4084 KB Output is correct
12 Correct 22 ms 4212 KB Output is correct
13 Correct 34 ms 3828 KB Output is correct
14 Correct 27 ms 4468 KB Output is correct
15 Correct 22 ms 3428 KB Output is correct
16 Correct 18 ms 3448 KB Output is correct
17 Correct 22 ms 3444 KB Output is correct
18 Correct 23 ms 3572 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 26 ms 2444 KB Output is correct
2 Correct 28 ms 2296 KB Output is correct
3 Execution timed out 4043 ms 4116 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 107 ms 9056 KB Output is correct
2 Correct 108 ms 8928 KB Output is correct
3 Execution timed out 4067 ms 16524 KB Time limit exceeded
4 Halted 0 ms 0 KB -