#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define REP(i,a,b) for(int i=a;i<(int)b;i++) #define rep(i,n) REP(i,0,n) typedef long long ll; int dp[11][11]; int main() { int N; cin >> N; int S[11]; rep(i, N+1) cin >> S[i]; rep(i, 11) rep(j, 11) dp[i][j] = 1<<29; dp[0][0] = 1; rep(i, N+1) rep(j, 11) { rep(k, 11) { dp[i][min(S[i], j+k+1)] = min(dp[i][min(S[i], j+k+1)], dp[i][j] + dp[i][k]); } dp[i+1][j] = min(dp[i+1][j], dp[i][j] + 1); } rep(i, S[N]+1) { if(i) cout << " "; cout << dp[N][i]; } cout << endl; return 0; }