题解 | 进制转换
#include <bits/stdc++.h> using namespace std; int main(){ string s; while(cin>>s){ long long ans=0; for(int i=2;i<s.size();i++){ ans*=16; if(isdigit(s[i]))ans+=s[i]-'0'; else ans+=s[i]-'A'+10; } cout<<ans<<endl; } }
本题测试数据的范围不大,用longlong可以强行突破