Submission #560924

# Submission time Handle Problem Language Result Execution time Memory
560924 2022-05-12T05:03:43 Z Joshi503 Teams (IOI15_teams) C++14
34 / 100
4000 ms 8908 KB
#include <teams.h>
#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using db = long double;
using str = string;
using pi = pair<int, int>;
using pl = pair<ll, ll>;
using pd = pair<db, db>;
#define f first
#define s second

#define tcT template<class T
#define tcTU tcT, class U
tcT> using V = vector<T>;
tcT, size_t SZ > using AR = array<T, SZ>;
using vi = V<int>;
using vb = V<bool>;
using vl = V<ll>;
using vd = V<db>;
using vs = V<str>;
using vpi = V<pi>;
using vpl = V<pl>;

#define sz(x) int((x).size())
#define bg(x) begin(x)
#define all(x) bg(x), end(x)
#define rall(x) x.rbegin(), x.rend() 
#define sor(x) sort(all(x)) 
#define pb push_back

#define FOR(i,a,b) for (int i = (a); i < (b); ++i)
#define F0R(i,a) FOR(i,0,a)
#define ROF(i,a,b) for (int i = ((b)-1); i >= (a); --i)
#define R0F(i,a) ROF(i,0,a)
#define rep(a) F0R(_,a)
#define each(a,x) for (auto& a: x)

const ll MOD = 1e9 + 7;
const ll MX = 1e9;
const ll INF = 1e18;
const db PI = acos((db)-1);
const int ddef[4]{ 1,0,-1,0 }, dataq[4]{ 0,1,0,-1 };
mt19937 rng((uint32_t)chrono::steady_clock::now().time_since_epoch().count());
template<class T> using pqg = priority_queue<T, vector<T>, greater<T>>;

void setIO(string name = "") {
    ios_base::sync_with_stdio(0); cin.tie(0);
    if (sz(name)) {
        freopen((name + ".in").c_str(), "r", stdin);
        freopen((name + ".out").c_str(), "w", stdout);
    }
}

void _print(char i) { cerr << i; }
void _print(string i) { cerr << i; }
void _print(float i) { cerr << i; }
void _print(int i) { cerr << i; }
void _print(double i) { cerr << i; }
void _print() { cerr << "\n"; };
template<typename x, typename y> void _print(pair<x, y>& t) { cerr << "{";_print(t.first);cerr << ", ";_print(t.second);cerr << "},"; }
template<typename x> void _print(x& t) { cerr << "{"; for (int i = 0;i < (int)t.size();i++) { _print(t[i]); if (i < (int)t.size() - 1) cerr << ", "; } cerr << "}"; }
template<typename x, typename... y> void _print(x a, y... b) { _print(a);if (sizeof...(b)) cerr << ", ";_print(b...); }
#define dbg(x...) cerr<<"["<<#x<<"] = [";_print(x);cerr<<"]\n";

int n;
const int MXN = 500001; 

vector<pi> alfa(MXN);

bool cmp(const pi& x, const pi& y){
    if(x.f == y.f){
        return x.s < y.s;
    }
    return x.s < y.s;
}

void init(int N, int A[], int B[]) {
    n = N;
    F0R(i, n){
        alfa[i].f = A[i];
    }
    F0R(i, n){
        alfa[i].s = B[i];
    }
    sort(alfa.begin(), alfa.begin() + n, cmp);  

    // F0R(i, n){
    //     cout << alfa[i].f << " ";
    // }
    // cout << "\n";
    // F0R(i, n){
    //     cout << alfa[i].s << " ";
    // }
    // cout << "\n";
}

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

    sort(K, K + M);
    int idx = 0;
    vb vis(n, 0);
    F0R(i, M){
        int cnt = 0;
        F0R(j, n){
            if(cnt == K[i]) break;
            if(vis[j] || K[i] < alfa[j].f || K[i] > alfa[j].s) continue; 
            vis[j] = 1;
            cnt++;
        }
        if(cnt != K[i]) return 0;
    }

    return 1;

}

Compilation message

teams.cpp: In function 'int can(int, int*)':
teams.cpp:102:9: warning: unused variable 'idx' [-Wunused-variable]
  102 |     int idx = 0;
      |         ^~~
teams.cpp: In function 'void setIO(std::string)':
teams.cpp:51:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   51 |         freopen((name + ".in").c_str(), "r", stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
teams.cpp:52:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   52 |         freopen((name + ".out").c_str(), "w", stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 4180 KB Output is correct
2 Correct 2 ms 4180 KB Output is correct
3 Correct 2 ms 4180 KB Output is correct
4 Correct 2 ms 4180 KB Output is correct
5 Correct 4 ms 4180 KB Output is correct
6 Correct 3 ms 4180 KB Output is correct
7 Correct 2 ms 4180 KB Output is correct
8 Correct 2 ms 4180 KB Output is correct
9 Correct 2 ms 4180 KB Output is correct
10 Correct 2 ms 4180 KB Output is correct
11 Correct 2 ms 4180 KB Output is correct
12 Correct 3 ms 4180 KB Output is correct
13 Correct 2 ms 4180 KB Output is correct
14 Correct 2 ms 4180 KB Output is correct
15 Correct 3 ms 4180 KB Output is correct
16 Correct 2 ms 4180 KB Output is correct
17 Correct 2 ms 4180 KB Output is correct
18 Correct 2 ms 4180 KB Output is correct
19 Correct 3 ms 4236 KB Output is correct
20 Correct 3 ms 4180 KB Output is correct
21 Correct 2 ms 4228 KB Output is correct
22 Correct 2 ms 4180 KB Output is correct
23 Correct 3 ms 4180 KB Output is correct
24 Correct 2 ms 4180 KB Output is correct
25 Correct 2 ms 4180 KB Output is correct
26 Correct 2 ms 4180 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 18 ms 5024 KB Output is correct
2 Correct 17 ms 5000 KB Output is correct
3 Correct 18 ms 5020 KB Output is correct
4 Correct 19 ms 5400 KB Output is correct
5 Correct 31 ms 4948 KB Output is correct
6 Correct 26 ms 4992 KB Output is correct
7 Correct 13 ms 4948 KB Output is correct
8 Correct 14 ms 4948 KB Output is correct
9 Correct 1735 ms 5152 KB Output is correct
10 Correct 670 ms 5100 KB Output is correct
11 Correct 79 ms 5616 KB Output is correct
12 Correct 16 ms 5624 KB Output is correct
13 Correct 14 ms 5972 KB Output is correct
14 Correct 15 ms 5912 KB Output is correct
15 Correct 19 ms 6144 KB Output is correct
16 Correct 18 ms 6092 KB Output is correct
17 Correct 17 ms 5972 KB Output is correct
18 Correct 17 ms 6080 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 80 ms 5404 KB Output is correct
2 Correct 105 ms 5380 KB Output is correct
3 Execution timed out 4082 ms 5628 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 472 ms 8908 KB Output is correct
2 Correct 562 ms 8868 KB Output is correct
3 Execution timed out 4078 ms 8328 KB Time limit exceeded
4 Halted 0 ms 0 KB -