func_code_string: #include <bits/stdc++.h>   using namespace std;   bitset<501> bt[1010];   int c[505];   int ans[250001], tot;   int main() {     tot = 0;     int n, k;     scanf( %d%d , &n, &k);     for (int i = 1; i <= n; i++) scanf( %d , &c[i]);     bt[0].set(0);     int maxn = 0;     for (int i = 1; i <= n; i++) {       int lim = maxn;       for (int j = lim; j >= 0; j--) {         if (j + c[i] > k) continue;         bt[j + c[i]] |= bt[j];         bt[j + c[i]] |= bt[j] << c[i];       }       maxn = maxn + c[i];     }     for (int i = 0; i <= 500; i++) {       if (bt[k].test(i)) {         ans[tot++] = i;       }     }     printf( %d n , tot);     for (int i = 0; i < tot; i++) {       printf( %d , ans[i]);       if (i == tot - 1)         printf(  n );       else         printf(   );     }   }   