文章

1

粉丝

14

获赞

5

访问

173

头像
进制转换2 题解:
P1259 北京大学机试题
发布于2026年1月7日 19:33
阅读数 173

#include<bits/stdc++.h>

using namespace std;

//从末尾开始累加
long long hexToDec(string s){

    long long int sum = 0;
    int term = 0;
    for (int i = s.length()-1; i >= 0; i--){
        if(s[i]>='0'&&s[i]<='9')
            sum = sum + (s[i]-'0') * pow(16,term);
        else if (s[i]=='A'||s[i]=='a')
            sum = sum + 10 * pow(16,term);
        else if (s[i]=='B'||s[i]=='b')
            sum = sum + 11 * pow(16,term);
        else if (s[i]=='C'||s[i]=='c')
            sum = sum + 12 * pow(16,term);
        else if (s[i]=='D'||s[i]=='d')
            sum = sum + 13 * pow(16,term);
        else if (s[i]=='E'||s[i]=='e')
            sum = sum + 14 * pow(16,term);
        else if (s[i]=='F'||s[i]=='f')
            sum = sum + 15 * pow(16,term);
        term++;
    }

    return sum;
}

int main(){

    string s;
    //scanf("%s",s)!=EOF
    while (cin>>s){
       if(s[0]=='-'){
            //-0xff -0x11
            i...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发