func_code_string: #include <bits/stdc++.h>   using namespace std;   double dp[2][600 + 10];   int main(void) {     int N, K, i, j;     double ans = 0.0;     cin >> N >> K;     dp[0][1] = 1.0;     for ((i) = 0; (i) < (int)(N); (i)++) {       int cur = i % 2, next = (i + 1) % 2;       for ((j) = 0; (j) < (int)(600); (j)++)         ans += dp[cur][j] * (j / 2.0 + j / (j + 1.0));       for ((j) = 0; (j) < (int)(600); (j)++)         dp[next][j] = dp[cur][j] * (1.0 - 1.0 / (j + 1.0) / K);       for ((j) = 0; (j) < (int)(600); (j)++)         dp[next][j + 1] += dp[cur][j] / (j + 1.0) / K;       for ((j) = 0; (j) < (int)(600); (j)++)         if (dp[next][j] < 1.0E-100) dp[next][j] = 0.0;     }     printf( %.12f n , ans);     return 0;   }   