题解 | #进制转换#
进制转换
https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6
#include <iostream> #include <map> using namespace std; map<char, int> mp; int main() { int weight = 16; int cur = 0; for(int i = 0; i < 16; i++) { if(i < 10) mp[i + '0'] = i; mp['A' + i - 10] = i; } string s; cin >> s; for(int i = 2; i < s.size(); i++) { cur *= weight; cur += mp[s[i]]; } cout << cur; } // 64 位输出请用 printf("%lld")