백준
첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다.
출력
첫째 줄에 입력으로 주어진 16진수 수를 10진수로 변환해 출력한다.
#include<cmath>
using namespace std;
int hexTodec(int n){
int dec=0;
if(n >= 'A'){
return n % (int)'A' + 10;
} else {
return n % (int)'0';
}
}
int main(){
string input;
int sum = 0;
cin >> input;
int length = input.length();
for(int i=0;i<input.length();i++){
int hexInt = hexTodec((char)input[i]);
sum += hexInt*pow(16, --length);
}
cout << sum;
}
이렇게 해서 자릿수하나씩곱해서 풀었는데
그냥 출력에 16진수 변환 포맷있었네...ㄷ
어쩐지 브론지치고 어렵다 싶었음