Submission #1025000

#TimeUsernameProblemLanguageResultExecution timeMemory
1025000hasan2006Bootfall (IZhO17_bootfall)C++17
100 / 100
301 ms6088 KiB
#include <bits/stdc++.h> using namespace std; #define TL ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); #define rall(s) s.rbegin(),s.rend() #define all(s) s.begin(),s.end() #define pb push_back #define se second #define fi first #define ll long long #define ld long double #define YES cout<<"YES\n" #define Yes cout<<"Yes\n" #define yes cout<<"yes\n" #define NO cout<<"NO\n" #define No cout<<"No\n" #define no cout<<"no\n" const int N = 5e3 + 9 , mod = 1e9 + 7; int a[N] , b[N * N] , c[N * N] ; void solve() { int n , i , ans = 0 , j , s = 0 , f , k , m ; cin>>n; b[0] = 1 , c[0] = n + 1; for(i = 1; i <= n; i ++){ cin>>a[i]; for(j = s; j >= 0; j--) b[j + a[i]] += b[j]; s += a[i]; } for(i = 1; i <= n; i++){ s -= a[i]; for(int j = 0; j <= s; j++){ b[j + a[i]] -= b[j]; c[max(j + j - s, 0)] += (b[j] != 0); ans += (c[max(j + j - s, 0)] == n); } for(int j = s; j >= 0; j --) b[j + a[i]] += b[j]; s += a[i]; } if(s % 2 == 1 || !b[s / 2]){ cout<<0; return; } cout<<ans<<"\n"; for(i = 1; i <= s; i++) if(c[i] == n) cout<<i<<" "; } int main(){ TL; /*#ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif*/ int t = 1; // cin>>t; while(t--) { solve(); } } // Author : حسن

Compilation message (stderr)

bootfall.cpp: In function 'void solve()':
bootfall.cpp:27:40: warning: unused variable 'f' [-Wunused-variable]
   27 |     int n , i , ans = 0 ,  j , s = 0 , f , k , m ;
      |                                        ^
bootfall.cpp:27:44: warning: unused variable 'k' [-Wunused-variable]
   27 |     int n , i , ans = 0 ,  j , s = 0 , f , k , m ;
      |                                            ^
bootfall.cpp:27:48: warning: unused variable 'm' [-Wunused-variable]
   27 |     int n , i , ans = 0 ,  j , s = 0 , f , k , m ;
      |                                                ^
#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...