题解 | 进制转换

进制转换

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

#include <bits/stdc++.h>// 万能头
using namespace std;

int main() {
    string s;
    cin>>s;
    reverse(s.begin(),s.end()); // 先将字符串给翻转
    int n=s.size();
    long long sum=0;
    for(int i=0;i<n-2;i++){ // 开始遍历
        if(s[i]>='0'&&s[i]<='9') // 判断范围 是否大于9
        sum+=(s[i]-'0')*pow(16,i); // 0-9
        else
        sum+=(s[i]-'A'+10)*pow(16,i); 10 -15
    }
cout<<sum; //输出answer
}
// 64 位输出请用 printf("%lld")

https://www.nowcoder.com/discuss/727521113110073344 + #牛客春招刷题训练营#

全部评论

相关推荐

05-20 10:33
东南大学
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

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