include [HTML_REMOVED]
include [HTML_REMOVED]//vector D.size() D.push_back() D[i]
include[HTML_REMOVED]// D.size()
include [HTML_REMOVED]//find() string reverse
using namespace std;
void mul(vector[HTML_REMOVED] &D, int b) {
int t = 0;
for (int i = 0; i < D.size(); i++) {
t += D[i] * b;
D[i] = t % 10;
t /= 10;
}
if (t != 0)
D.push_back(t);
}
void add(vector[HTML_REMOVED] &D, int k, int b) {
int t = b;
for (int i = k; i < D.size(); i++) {
t += D[i];
D[i] = t % 10;
t /= 10;
}
if (t != 0)
D.push_back(t);
}
int main() {
int n;
string d;
cin >> n >> d;
reverse(d.begin(), d.end());
int dot = d.find(‘.’);
vector[HTML_REMOVED] D;
for (auto c : d) {
if (c != ‘.’)
D.push_back(c - ‘0’);
}
while (n–)
mul(D, 2);
if (D[dot - 1] >= 5)
add(D, dot, 1);
for (int i = D.size() - 1; i >= dot; i–) {
cout << D[i];
}
return 0;
}