#include <stdio.h>
#include <stdbool.h>
int blackJackValue(char card1, char card2);
int main(void) {
char c1, c2;
if (scanf(" %c %c", &c1
, &c2
) != 2) { printf("*** Invalid input format\n"); return 1;
}
blackJackValue(c1, c2);
return 0;
}
int blackJackValue(char card1, char card2) {
int cardTotal = 0;
bool aceFlag = false;
char cards[2] = { card1, card2 };
for (int i = 0; i < 2; i++) {
char c = cards[i];
if (c >= '2' && c <= '9') {
cardTotal += c - '0';
}
else if (c == 'T' || c == 'J' || c == 'Q' || c == 'K') {
cardTotal += 10;
}
else if (c == 'A') {
if (!aceFlag) {
cardTotal += 11;
aceFlag = true;
} else {
cardTotal += 1;
}
}
else {
printf("\nERROR, %c is not a valid card", c
); return -1; // invalid card
}
}
printf("\nThe score is %d\n", cardTotal
); return cardTotal;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRib29sLmg+CgppbnQgYmxhY2tKYWNrVmFsdWUoY2hhciBjYXJkMSwgY2hhciBjYXJkMik7CgppbnQgbWFpbih2b2lkKSB7CgljaGFyIGMxLCBjMjsKICAgIHByaW50ZigiRW50ZXIgY2FyZHM6ICIpOwogICAgaWYgKHNjYW5mKCIgJWMgJWMiLCAmYzEsICZjMikgIT0gMikgewogICAgICAgIHByaW50ZigiKioqIEludmFsaWQgaW5wdXQgZm9ybWF0XG4iKTsKICAgICAgICByZXR1cm4gMTsKICAgIH0KCiAgICBibGFja0phY2tWYWx1ZShjMSwgYzIpOwogICAgCglyZXR1cm4gMDsKfQoKaW50IGJsYWNrSmFja1ZhbHVlKGNoYXIgY2FyZDEsIGNoYXIgY2FyZDIpIHsKICAgIGludCBjYXJkVG90YWwgPSAwOwogICAgYm9vbCBhY2VGbGFnID0gZmFsc2U7CiAgICBjaGFyIGNhcmRzWzJdID0geyBjYXJkMSwgY2FyZDIgfTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IDI7IGkrKykgewogICAgICAgIGNoYXIgYyA9IGNhcmRzW2ldOwoKICAgICAgICBpZiAoYyA+PSAnMicgJiYgYyA8PSAnOScpIHsKICAgICAgICAgICAgY2FyZFRvdGFsICs9IGMgLSAnMCc7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKGMgPT0gJ1QnIHx8IGMgPT0gJ0onIHx8IGMgPT0gJ1EnIHx8IGMgPT0gJ0snKSB7CiAgICAgICAgICAgIGNhcmRUb3RhbCArPSAxMDsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZiAoYyA9PSAnQScpIHsKICAgICAgICAgICAgaWYgKCFhY2VGbGFnKSB7CiAgICAgICAgICAgICAgICBjYXJkVG90YWwgKz0gMTE7CiAgICAgICAgICAgICAgICBhY2VGbGFnID0gdHJ1ZTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGNhcmRUb3RhbCArPSAxOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgIAlwcmludGYoIlxuRVJST1IsICVjIGlzIG5vdCBhIHZhbGlkIGNhcmQiLCBjKTsKICAgICAgICAgICAgcmV0dXJuIC0xOyAvLyBpbnZhbGlkIGNhcmQKICAgICAgICB9CiAgICB9CiAgICBwcmludGYoIlxuVGhlIHNjb3JlIGlzICVkXG4iLCBjYXJkVG90YWwpOwogICAgcmV0dXJuIGNhcmRUb3RhbDsKfQ==