#include <bits/stdc++.h>
using namespace std;
int M = 1e9 + 7;
int incr(string &s) {
  int i, n = s.length();
  for (i = n - 1; i >= 0; --i) {
    if (s[i] != '9') {
      s[i]++;
      return 0;
    }
    s[i] = '0';
  }
  for (i = n - 1; i >= 0; --i) {
    s[i] = '0';
  }
  s = '1' + s;
  return 0;
}
int incr2(string &s, int t) {
  while (t > 0) {
    for (int i = s.length() - 1; i >= 0; --i) {
      if (s[i] != '9') {
        s[i]++;
        --t;
        if (s[i] == '5') {
          if (i == 0) {
            return 1;
          }
          s.pop_back();
          break;
        } else {
          return 0;
        }
      } else {
        s[i] = '0';
        s.pop_back();
        if (i == 0) {
          return 1;
        }
      }
    }
  }
  for (int i = s.length() - 1; i >= 0; --i) {
    if (s[i] != '9') {
      s[i]++;
      return 0;
    }
  }
}
int main() {
  int i, n, t;
  cin >> n >> t;
  string s;
  cin >> s;
  int di = s.find('.');
  string dpart = s.substr(0, di);
  s = s.substr(di + 1, n - di - 1);
  if (s[0] >= '5') {
    incr(dpart);
    cout << dpart;
    return 0;
  }
  for (i = 0; i < s.length(); i++) {
    if (s[i] >= '5') {
      break;
    }
  }
  if (i == s.length()) {
    cout << dpart << '.' << s;
    return 0;
  }
  s = s.substr(0, i);
  int c4 = 0;
  for (i = s.length() - 1; i >= 0; --i) {
    if (s[i] == '4') {
      c4++;
    } else {
      break;
    }
  }
  if (c4 == 0) {
    incr2(s, 0);
    cout << dpart << '.' << s;
    return 0;
  }
  if (c4 == s.length() && t > c4) {
    incr(dpart);
    cout << dpart;
    return (0);
  }
  cout << dpart << '.';
  if (t <= c4) {
    cout << s.substr(0, s.length() - t) << '5';
    return 0;
  }
  s[s.length() - c4 - 1]++;
  cout << s.substr(0, s.length() - c4);
  return 0;
}
