백준 1550 - 16 진수

프로그래밍 이모저모/프로그래밍 2019. 8. 7. 21:09

#include <iostream>
#include <string>

using namespace std;

int main()
{
    string input;
    cin >> input;

    int temp = 0;
    int res = 0;
    for (int i = input.length() - 1; i >= 0; i--)
    {

        switch (input[i])
        {
        case'0' :
            temp = 0;
            break;
        case '1':
            temp = 1;
            break;
        case '2':
            temp = 2;
            break;
        case '3':
            temp = 3;
            break;
        case '4':
            temp = 4;
            break;
        case '5':
            temp = 5;
            break;
        case '6':
            temp = 6;
            break;
        case '7':
            temp = 7;
            break;
        case '8':
            temp = 8;
            break;
        case '9':
            temp = 9;
            break;
        case 'A':
            temp = 10;
            break;
        case 'B':
            temp = 11;
            break;
        case 'C':
            temp = 12;
            break;
        case 'D':
            temp = 13;
            break;
        case 'E':
            temp = 14;
            break;
        case 'F':
            temp = 15;
            break;
        }
        for (int j = i; j < input.length()-1; j++)
        {
            temp *= 16;
        }
        res += temp;
    }
    cout << res;
    return 0;
}

case 0을 안 써서 몇 번 틀렸다...

'프로그래밍 이모저모 > 프로그래밍' 카테고리의 다른 글

백준 1676 - 팩토리얼 0의 개수  (0) 2019.08.08
백준 2004 - 조합 0의 개수  (0) 2019.08.07
백준 1100 - 하얀 칸  (0) 2019.08.07
백준 1546 - 평균  (0) 2019.08.06
백준 1110 - 더하기 사이클  (0) 2019.08.06