#include using namespace std; int main() { int n; cin >> n; static int dp[123][123]; vector s(n + 1); for (int i = 0; i <= n; i++) { cin >> s[i]; } fill_n(*dp, 123 * 123, 1e9); dp[0][0] = 1; for (int i = 0; i <= n; i++) { for (int j = 0; j <= s[i]; j++) { if (i > 0) { dp[i][j] = min(dp[i][j], dp[i - 1][j] + 1); } for (int k = 0; k <= j - 1; k++) { dp[i][j] = min(dp[i][j], dp[i][k] + dp[i][j - 1 - k]); } } } for (int i = 0; i <= s[n]; i++) { cout << dp[n][i] << " "; } }