Codeforces-697B Barnicle(模拟)
2016-10-24 22:26
489 查看
题意是将一个数字的科学计数法转化为完整数字,模拟即可,不过要注意左0右0等等特殊情况,之前开始是用的一个个字符读入进字符数组然后进行分类讨论很复杂,后来发现直接读入字符串进行统一的划分操作即可
#include"iostream"
#include"stdlib.h"
#include"string"
using namespace std;
string s;
string a,d,c;
int b;
int main()
{
cin>>s;
a=s[0];
d=s.substr(2,s.find('e')-2);
c=s.substr(s.find('e')+1,s.length()-s.find('e'));
b=atoi(c.c_str())+1;
/*cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
cout<<d<<endl;
cout<<endl;*/
a+=d;
while(a.length()<b) a+='0';
//cout<<a<<endl;
a=a.substr(0,b)+'.'+a.substr(b,a.length()-b);
//cout<<a<<endl;
int l=0;
while(a[0]=='0') { a=a.substr(1,a.length()-1); l++;}
// cout<<a<<endl;
l=a.length()-1;
while(a[a.length()-1]=='0') { a=a.substr(0,a.length()-1); l--;}
// cout<<a<<endl;
if(a[0]=='.') a='0'+a;
if(a[a.length()-1]=='.') a=a.substr(0,a.length()-1);
cout<<a<<endl;
return 0;
}
#include"iostream"
#include"stdlib.h"
#include"string"
using namespace std;
string s;
string a,d,c;
int b;
int main()
{
cin>>s;
a=s[0];
d=s.substr(2,s.find('e')-2);
c=s.substr(s.find('e')+1,s.length()-s.find('e'));
b=atoi(c.c_str())+1;
/*cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
cout<<d<<endl;
cout<<endl;*/
a+=d;
while(a.length()<b) a+='0';
//cout<<a<<endl;
a=a.substr(0,b)+'.'+a.substr(b,a.length()-b);
//cout<<a<<endl;
int l=0;
while(a[0]=='0') { a=a.substr(1,a.length()-1); l++;}
// cout<<a<<endl;
l=a.length()-1;
while(a[a.length()-1]=='0') { a=a.substr(0,a.length()-1); l--;}
// cout<<a<<endl;
if(a[0]=='.') a='0'+a;
if(a[a.length()-1]=='.') a=a.substr(0,a.length()-1);
cout<<a<<endl;
return 0;
}
相关文章推荐
- Codeforces 716B Complete the Word【模拟】 (Codeforces Round #372 (Div. 2))
- Codeforces 689A. Mike and Cellphone(模拟)
- Codeforces 691C. Exponential notation(模拟)
- CodeForces 2A - Winner(模拟)
- CodeForces - 767A Snacktower(模拟+思维)
- CodeForces 404 Marathon ( 浮点数取模 -- 模拟 )
- Codeforces - 362 (Div. 2)B - Barnicle(模拟)
- Codeforces 606B Testing Robots 【模拟】
- Codeforces Good Bye 2017: F. New Year and Rainbow Roads(模拟)
- codeforces 283A - Cows and Sequence 简单数据结构模拟
- CodeForces 552A-Vanya and Table【模拟】
- CodeForces - 758D Ability To Convert(模拟,递归)
- CodeForces 724|模拟|贪心|扩展欧几里得|
- Codeforces 746E Numbers Exchange 模拟
- CodeForces - 750B New Year and North Pole (模拟)
- CodeForces - 148B Escape (模拟)
- CodeForces - 868B Race Against Time(模拟)
- CodeForces 670E Correct Bracket Sequence Editor(list和迭代器函数模拟)
- 【CodeForces】66B - Petya and Countryside(递增子串变形题,模拟)
- Codeforces 876 D. Sorting the Coins 模拟