#include<iostream>
#include<string>
using namespace std;
int main()
{
if(cin.get()=='-') cout<<'-';
string st; int k;
getline(cin,st,'E'); cin>>k;
if(k<0)
{
st.erase(1,1);
st="0."+string(-k-1,'0')+st;
}
else if(k>0)
{
int cnt=st.size()-2;//右边cnt个数字
if(k<cnt)
{
st.insert(2+k,".");
st.erase(1,1);
}
else
{
st.erase(1,1);
if(k>cnt) st+=string(k-cnt,'0');
}
}
cout<<st;
return 0;
}
实际上对于0.02E+1的结果是00.2,明显不正常 但还是过了
1073. Scientific Notation
最新推荐文章于 2024-03-02 17:12:52 发布