#include <bits/stdc++.h> using namespace std; int pos,p1; int ib[1566]; int an[1567]; int n; string a,b; int main() { cin>>n>>a; for(int i=a.size()-1; i>=0; i--) { if(a[i]!='.') { pos++; b.insert(b.end(),a[i]);///string 插char用insert/push_back } ///插string用+=/append else p1=pos;///记录小数点的位置 } for(int i=0; i<pos; i++) { ib[i]=b[i]-'0'; } while(n--) { for(int i=0; i<pos; i++) ib[i]*=2;///高精度乘法,因为2^1024不能表示,所以只能1024次乘2 int c=0; for(int i=0; i<pos; i++) { int s=(ib[i]+c)%10;///s表本位,c表进位 c=(ib[i]+c)/10; ib[i]=s; } if(c) ib[pos++]=1;///考虑99+1变100 } if(ib[p1-1]>=5) { int c=1; for(int i=p1; i<pos; i++) { int s=(ib[i]+c)%10; c=(ib[i]+c)/10; ib[i]=s; } if(c) ib[pos++]=1; } for(int i=pos-1; i>=p1; i--) cout<<ib[i]; }