问题标题: 酷町堂:7459 进制之间的转换

0
0
已解决
万韧山
万韧山
初级天翼
初级天翼

题目链接: 酷町堂:7459

WA60

#include<bits/stdc++.h>
using namespace std;
string s;
long long sum,t=1;
int v[500],l;
int main(){
//取个位 %10
//取十位 /10%10
//取百位 /100%10
//取千位 /1000%10
    //freopen("题目英文名.in","r",stdin);
    //freopen("题目英文名.out","w",stdout);
    cin>>s;
    for(int i=s.size()-1;i>=0;i--){
        sum+=t*(s[i]-'0');
        t*=2;
    }
    while(sum!=0){
        v[++l]=sum%8;
        sum/=8;
    }
    for(int i=l;i>=1;i--){
        cout<<v[i];
    }
    //fclose(stdin);
    //fclose(stdout);
    return 0;
}

样例对的


0
0
0
何泓臻
何泓臻
修练者
修练者

这道题最大是2^100,用快速进制转换比较好做

我要回答