func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long mod = 1e9 + 7;   long long n, k, m, f[100005][15][20];   long long count(long long x) {     long long sum = 0;     while (x) sum++, x -= (x & -x);     return sum;   }   signed main() {     scanf( %lld%lld%lld , &n, &k, &m);     f[0][0][0] = 1;     for (long long i = 0; i < n; i++) {       for (long long j = 0; j <= k; j++) {         for (long long s = 0; s < (1 << m); s++) {           f[i + 1][j][s >> 1] = (f[i + 1][j][s >> 1] + f[i][j][s]) % mod;           f[i + 1][j + 1][(s >> 1) | (1 << (m - 1))] =               (f[i + 1][j + 1][(s >> 1) | (1 << (m - 1))] +                (1ll + count(s)) * f[i][j][s]) %               mod;         }       }     }     long long ans = 0;     for (long long i = 0; i < (1 << m); i++) ans = (ans + f[n][k][i]) % mod;     printf( %lld n , ans);     return 0;   }   