Submission #1153769

#TimeUsernameProblemLanguageResultExecution timeMemory
1153769GabitussBootfall (IZhO17_bootfall)C++20
0 / 100
1095 ms328 KiB
#include <bits/stdc++.h>

using namespace std;

//@formatter:off
using ll = long long;
template<typename T> istream &operator>>(istream &is, vector<T> &a);
template<typename T> ostream &operator<<(ostream &os, vector<T> &a);
//@formatter:on

signed main() {
#ifdef LOCAL
      freopen("input.txt", "r", stdin);
      freopen("ans.txt", "w", stdout);
#else
      ios_base::sync_with_stdio(false);
      cin.tie(0);
#endif

      int n;
      cin >> n;
      vector<int> a(n);
      cin >> a;

      vector<ll> ans;
      for (int V = 1; V <= 12 * 200; ++V) {
            vector<int> b = a;
            b.push_back(V);


            vector<int> good(n+1);
            for (int mask = 0; mask < (1 << (n + 1)); ++mask) {
                  int sum1 = 0;
                  int sum2 = 0;
                  for (int i = 0; i < n + 1; ++i) {
                        if ((mask >> i) & 1) sum1 += b[i];
                        else sum2 += b[i];
                  }
                  for (int i = 0; i < n + 1; ++i) {
                        if ((mask >> i) & 1) continue;
                        sum2 -= b[i];
                        if(sum1==sum2)good[i]=true;
                        sum2 += b[i];
                  }
            }
            if (std::count(good.begin(), good.end(),1)==n+1)ans.push_back(V);
      }
      cout << ans.size() << "\n";
      cout << ans;
}

// region POZOR
template<typename T>
ostream &operator<<(ostream &os, vector<T> &a) {
      for (int i = 0; i < a.size(); i++)
            os << a[i] << " \n"[i == a.size() - 1];
      return os;
}

template<typename T>
istream &operator>>(istream &is, vector<T> &a) {
      for (auto &i: a)
            is >> i;
      return is;
}
// endregion
#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...