步骤
- 以字符串形式读入这个大小早已超过了long long类型的数字
- 编写函数获得二进制的字符
- 执行函数,直接输出结果
可执行代码
#include<string>
#include<iostream>
#include<algorithm>
using namespace std;
string rese(string s)
{
int length=s.size();
string b="";
for(int i=0;i<length; )
{
int k=0;
for(int j=i;j<length;j++)
{
int t=(k*10 + s[j] - '0')%2;//int t=(k*10+int(s[j]-'0'))%2;
s[j]=(k*10 + s[j] - '0')/2 +'0';//s[j]=int(s[j]-'0')*10/2;
k=t;
}
b=b+char(k+'0');
while(s[i] == '0')
i++;
}
reverse(b.begin(),b.end());
//b=reverse(b.begin(),b.end());//忘记了
return b;
}
int main()
{
string s;
cin>>s;
cout<<rese(s);
}