#include <bits/stdc++.h>   using namespace std;   inline int two(int n) { return 1 << n; }   inline void set_bit(int& n, int b) { n |= two(b); }   inline void unset_bit(int& n, int b) { n &= ~two(b); }   inline int last_bit(int n) { return n & (-n); }   template <class T>   T gcd(T a, T b) {     return (b != 0 ? gcd<T>(b, a % b) : a);   }   template <class T>   T lcm(T a, T b) {     return (a / gcd<T>(a, b) * b);   }   int dx[] = {-1, 0, 1, 0}, dy[] = {0, 1, 0, -1};   const double pi = 2 * acos(0.0);   const int mod = 1000000;   int main() {     std::ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);     ;     long long m, n;     cin >> m >> n;     double res = m;     for (int i = 1; i < m; i++) {       res -= pow(i / double(m), n);     }     cout << fixed << setprecision(10) << res;   }   