Submission #510063

# Submission time Handle Problem Language Result Execution time Memory
510063 2022-01-14T16:02:12 Z CraniXort Ice Hockey World Championship (CEOI15_bobek) C++17
50 / 100
198 ms 16860 KB
#include <bits/stdc++.h>

#define fin std::cin
#define fout std::cout

// std::ifstream fin("hockey.in");
// std::ofstream fout("hockey.out");

void compute(std::vector <int>& v) {
    std::vector <int> x;
    std::stack <int> toAdd;
    x.push_back(0);

    for(auto value: v) {
        for(auto sum: x)
            toAdd.push(value + sum);
        while(toAdd.empty() == false) {
            x.push_back(toAdd.top());
            toAdd.pop();
        }
    }

    std::sort(x.begin(), x.end());
    v = x;
}

void print(std::vector <int> &v) {
    for(int i: v)
        fout << i << ' ';
    fout << '\n';
}

int main() {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(NULL);

    int n;
    long long maxsum;

    fin >> n >> maxsum;

    std::vector <int> a, b;
    for(int i = 0, value; i < n / 2; i ++) {
        fin >> value;
        a.push_back(value);
    }

    for(int i = n / 2, value; i < n; i ++){
        fin >> value;
        b.push_back(value);
    }

    compute(a);
    compute(b);

    // print(a);
    // print(b);
    long long ans = 0;
    for(int i = 0, j = b.size() - 1; i < a.size(); i ++) {
        while(j >= 0 and a[i] + b[j] > maxsum)
            j --;
        ans = ans + (j + 1);
    }

    fout << ans << '\n';


    return 0;
}

Compilation message

bobek.cpp: In function 'int main()':
bobek.cpp:59:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |     for(int i = 0, j = b.size() - 1; i < a.size(); i ++) {
      |                                      ~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 1 ms 316 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 0 ms 204 KB Output is correct
7 Correct 0 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 14 ms 2024 KB Output is correct
2 Correct 46 ms 4432 KB Output is correct
3 Correct 198 ms 16800 KB Output is correct
4 Correct 45 ms 4452 KB Output is correct
5 Correct 7 ms 1328 KB Output is correct
6 Correct 5 ms 904 KB Output is correct
7 Correct 10 ms 1352 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 21 ms 2400 KB Output is correct
2 Correct 17 ms 2016 KB Output is correct
3 Correct 74 ms 8560 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 3 ms 904 KB Output is correct
6 Correct 10 ms 1344 KB Output is correct
7 Correct 10 ms 1336 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 32 ms 3944 KB Output is correct
2 Correct 67 ms 7476 KB Output is correct
3 Correct 65 ms 7568 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 32 ms 7448 KB Output is correct
6 Correct 145 ms 16860 KB Output is correct
7 Correct 64 ms 7476 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 54 ms 14736 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 6 ms 2120 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 66 ms 16784 KB Output isn't correct
2 Halted 0 ms 0 KB -