Submission #1133994

#TimeUsernameProblemLanguageResultExecution timeMemory
1133994AgageldiBootfall (IZhO17_bootfall)C++17
13 / 100
1093 ms464 KiB
/* ID: agageld1 LANG: C++17 TASK: siuu */ #include <bits/stdc++.h> using namespace std; #define ll long long #define N 200005 #define pb push_back #define ff first #define ss second #define sz(s) (int)s.size() //mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); ll n, sum, t, pos[N]; vector <int> answer, v; multiset <int> a; int main (){ ios::sync_with_stdio(0);cin.tie(0); cin >> n; for(int i = 1; i <= n;i++) { int x; cin >> x; sum += x; v.pb(x); } for(int i = 1; i <= 1000; i++) { sum += i; v.pb(i); bool tr = 0; for(auto j : v) { if((sum - j) % 2) tr = 1; } if(tr) { v.pop_back(); sum -= i; continue; } for(int j = 0; j < sz(v); j++) { for(int m = 1; m <= sum; m++) { pos[m] = 0; } pos[0] = 1; sum -= v[j]; for(int k = 0; k < sz(v); k++) { if(k == j) continue; for(int l = sum/2; l >= 0; l--) { if(pos[l]) pos[l + v[k]] = 1; } } sum += v[j]; if(!pos[(sum - v[j]) / 2]) { tr = 1; break; } } if(!tr) answer.pb(i); v.pop_back(); sum -= i; } cout << sz(answer) << '\n'; for(auto i:answer) { cout << i << " "; } }
#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...