题解 | 进制转换

进制转换

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

#include<bits/stdc++.h>
using namespace std;
#define IOS ios_base::sync_with_stdio(false);cin.tie(nullptr)
#define INF 0x7fffffff
#define inf 0x3f3f3f3f
#define PII pair<int,int>
#define endl '\n'
#define int long long
#define double long double
#define mod 998244353
int read() {char act = 0;int f = 1, x= 0;while (act = getchar(), act < '0' && act != '-');if (act == '-') f = -1, act = getchar();x = act - '0';while (act = getchar(), act >= '0') x = x * 10 + act - '0';return x * f;}
void solve(){
  string s;
  cin>>s;
  s=s.substr(2);
  reverse(s.begin(),s.end());
  int sum=0;
  for(int i=0;i<s.size();i++){
    if(s[i]>='0'&&s[i]<='9')sum+=(s[i]-'0')*pow(16,i);
    else sum+=(s[i]-'A'+10)*pow(16,i);
  }
  cout<<sum<<endl;
}
signed main()
{
  IOS; 
  int t=1;
  //cin>>t;
  while(t--){
    solve();
  }
  
  return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 14:00
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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