1073
Description:
这种模拟题柳神一定很简洁健壮吧…
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<map>
#include<vector>
#include<queue>
using namespace std;
string a;
int flag;
int main()
{
#ifdef ONLINE_JUDGE
#else
freopen("1.txt", "r", stdin);
#endif // ONLINE_JUDGE
cin>>a;
flag = a[0]=='-'?-1:1;
a.erase(a.begin());
auto it = a.find('E');
int e = stoi(a.substr(it+1, a.size()));
a.erase(it, a.size()-it);
if(e >= 0){
if(a.size()-2<e){
string zero(e-a.size()+2,'0');
a += zero;
it = a.find('.');
a.erase(it, 1);
}else if(a.size()-2 == e){
it = a.find('.');
a.erase(it, 1);
}else{
it = a.find('.');
a.erase(it, 1);
it += e;
a.insert(it, ".");
}
}else{
if(a[0] != '0'){
string head = "0.";
e++;
string zero(-e,'0');
head += zero;
a.erase(a.find('.'), 1);
a = head+a;
}else{
string head = "0.";
string zero(-e,'0');
head += zero;
a.erase(0, 2);
a = head+a;
}
}
if(flag==-1)printf("-");
cout<<a<<endl;
return 0;
}