文章
1
粉丝
0
获赞
0
访问
53
#include<stdio.h>
#include<string.h>
int main() {
long long dec1;
while (scanf("%ld", &dec1) != EOF) {
long long dec2 = 0;
int index = 0;
char bin[1000] = {0};
while (dec1 > 0) {
bin[index++] = (dec1 % 2) + '0';
dec1 /= 2;
}
for (int i = 0; i < index; i++) {
if (bin[i] == '0') {
dec2 *= 2;
}
else {
dec2 = dec2 * 2 + 1;
}
}
printf("%ld\n", dec2);
}
return 0;
}
登录后发布评论
题目要求一个1000位(即10^999)以内的十进制数。
longlong是存不下的,需要模拟大数