Submission #340054

# Submission time Handle Problem Language Result Execution time Memory
340054 2020-12-26T16:43:19 Z Sprdalo Bootfall (IZhO17_bootfall) C++17
6 / 100
527 ms 262144 KB
#include <bits/stdc++.h>

using namespace std;

#define int ll
typedef long long ll;
typedef long double ld;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<double> vd;
typedef vector<bool> vb;
typedef vector<char> vc;
typedef vector<string> vs;
typedef vector<pi> vp;
typedef vector<pl> vpl;

signed main()
{
    ios_base::sync_with_stdio(false); 
    cin.tie(nullptr); 
    cout.tie(nullptr); 
    cerr.tie(nullptr);    

    int n;
    cin >> n;

    vi a(n);
    int suma = 0;
    for (auto& i : a){
        cin >> i;
        suma += i;
    }

    set<int> d;
    d.insert(0);
    bool ok = 0;
    for (int i = 0; i < n; ++i){
        vi tmp;
        for (int x : d){
            tmp.push_back(x+a[i]);
        }
        for (int x : tmp){
            if (2 * x == suma){
                ok = 1;
                break;
            }
            d.insert(x);
        }
        if (ok) break;
    }

    if (!ok)
        return cout << "0\n", 0;

    vector<vi> t(n, vi(1,0));
    for (int i = 0; i < n; ++i){
        for (int j = 0; j < n; ++j){
            if (i == j) continue;

            int len = t[j].size();
            for (int k = 0; k < len; ++k){
                t[j].push_back(a[i] + t[j][k]);
            }

            unique(t[j].begin(), t[j].end());
        }
    }

    for (int i = 0; i <n; ++i)
        unique(t[i].begin(), t[i].end());

    vi sol;
    vector<vi> cnt(n, vi(suma+10,0));
    for (int i = 0; i < n; ++i){
        int s = suma - a[i];
        for (int x : t[i]){
            int y = s-x;

            if (y <= x) continue;
            if (!i || cnt[i-1][y-x])
                cnt[i][y-x] = 1;
        }
    }

    for (int i = 0; i < suma + 10; ++i)
        if (cnt[n-1][i])
            sol.push_back(i);

    cout << (int)sol.size() << '\n';
    for (auto& i : sol)
        cout << i << ' ';
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 620 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 768 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 620 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 768 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
10 Runtime error 527 ms 262144 KB Execution killed with signal 9 (could be triggered by violating memory limits)
11 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 620 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 768 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
10 Runtime error 527 ms 262144 KB Execution killed with signal 9 (could be triggered by violating memory limits)
11 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 620 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 768 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
10 Runtime error 527 ms 262144 KB Execution killed with signal 9 (could be triggered by violating memory limits)
11 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 620 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 768 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
10 Runtime error 527 ms 262144 KB Execution killed with signal 9 (could be triggered by violating memory limits)
11 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 620 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 768 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
10 Runtime error 527 ms 262144 KB Execution killed with signal 9 (could be triggered by violating memory limits)
11 Halted 0 ms 0 KB -