题解 | #进制转换#
进制转换
https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6
#include <iostream>
#include <string>
using namespace std;
int main() {
int a;
string s;
while (cin >> s) { // 注意 while 处理多个 case
s = s.substr(2, s.length()-2);
int n=1, ans=0;
for(int i=s.length();i>0;i--){
if(s[i-1]>='0'&&s[i-1]<='9'){
ans+=(s[i-1]-'0')*n;
}else{
ans+=(s[i-1]-'A'+10)*n;
}
n*=16;
}
cout<<ans<<endl;
}
}
// 64 位输出请用 printf("%lld")

百度公司氛围 602人发布