import java.util.Scanner; 

import java.math.*;

public class Main { public enum HexDigit {
        ZERO('0', 0),
        ONE('1', 1),
        TWO('2', 2),
        THREE('3', 3),
        FOUR('4', 4),
        FIVE('5', 5),
        SIX('6', 6),
        SEVEN('7', 7),
        EIGHT('8', 8),
        NINE('9', 9),
        A('A', 10),
        B('B', 11),
        C('C', 12),
        D('D', 13),
        E('E', 14),
        F('F', 15);

        private final char hexChar;
        private final int decimalValue;

        HexDigit(char hexChar, int decimalValue) {
            this.hexChar = hexChar;
            this.decimalValue = decimalValue;
        }

        public char getHexChar() {
            return hexChar;
        }

        public int getDecimalValue() {
            return decimalValue;
        }

        // 根据16进制字符查找对应的枚举值
        public static HexDigit fromChar(char c) {
            c = Character.toUpperCase(c);
            for (HexDigit digit : values()) {
                if (digit.hexChar == c) {
                    return digit;
                }
            }
            throw new IllegalArgumentException("Invalid hex character: " + c);
        }
    }
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String str = in.nextLine();
        long sum=0;
        for(int i=str.length()-1;i>1;i--){
          sum+=  HexDigit.fromChar(str.charAt(i)).getDecimalValue()*Math.pow(16,str.length()-1-i);
        }
        System.out.print(sum);
    }
   
}

直接枚举类型写死了,懒得判断