文章
229
粉丝
0
获赞
1051
访问
40.7k
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
string s;
int mod()
{
return (s[s.size()-1]-'0')%2;
}
void div()
{
string res;
int t=0;
for(int i=0;i<s.size();i++)
{
int x=s[i]-'0'+t;
if(x<2&&i==0)
{
t=10;
res.push_back('0');
}
else
{
res.push_back(x/2+'0');
if(x%2==0)
t=0;
else
t=10;
}
}
while(res[0]=='0')
{
res.erase(res.begin());
if(res.size()==0)
break;
}
s=res;
}
void work()
{
vector<int> nums;
while(s.size())
{
int x=mod();
nums.push_back(x);
div();
}
reverse(nums.begin(),nums.end());
for(int i=0;i<nums.size();i++)
cout<<nums[i];
puts("");
}
int main()
{
while(cin>>s)
work();
return 0;
}
登录后发布评论
暂无评论,来抢沙发