func_code_string: #include <bits/stdc++.h>   using namespace std;   int fireball1, fireball2, health[100], attack[100], attack1[100];   int n, sum = 2e+8;   void dfs(int x, int y) {     if (y >= sum) return;     if (x == n) {       sum = y;       for (int i = 1; i <= n; i++) attack[i] = attack1[i];       return;     }     for (int i = 0; i <= 100; i++) {       if (y + i > sum) break;       if (health[x - 1] - fireball2 * i >= 0) continue;       if (x == n - 1)         if (health[n] - fireball2 * i >= 0) continue;       attack1[x] = i;       health[x - 1] -= fireball2 * i;       health[x] -= fireball1 * i;       health[x + 1] -= fireball2 * i;       dfs(x + 1, y + i);       health[x - 1] += fireball2 * i;       health[x] += fireball1 * i;       health[x + 1] += fireball2 * i;       if (health[x] - fireball1 * i < 0 && health[x + 1] - fireball2 * i < 0)         break;     }   }   int main() {     scanf( %d%d%d , &n, &fireball1, &fireball2);     for (int i = 1; i <= n; i++) scanf( %d , &health[i]);     dfs(2, 0);     printf( %d n , sum);     for (int i = 2; i < n; i++)       for (int j = 1; j <= attack[i]; j++) printf( %d  , i);   }   