题解 | 进制转换

进制转换

https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    string s;
    cin>>s;
    int bit = 0;
    int num = 0;
    int length = s.size();
    for(int i = length - 1; i>1; i--){
        if(s[i] >= '0' && s[i] <= '9'){
            num += (s[i] - '0') * pow(16, bit);
            bit++;
        }else if(s[i] >= 'A' && s[i] <= 'F'){
            num +=(s[i] - 'A' + 10) * pow(16, bit);
            bit++;
        }   
    }
    cout<<num;
        
    
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

07-25 13:42
门头沟学院 Java
安锋:看看老板的腿
点赞 评论 收藏
分享
水墨不写bug:疑似没有上过大学
点赞 评论 收藏
分享
allin秋招的单身...:我投过这家 上来就发个设计图给我,让我做好发到他邮箱
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务