diff options
Diffstat (limited to '22.2/main.cpp')
-rw-r--r-- | 22.2/main.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/22.2/main.cpp b/22.2/main.cpp new file mode 100644 index 0000000..0ab6017 --- /dev/null +++ b/22.2/main.cpp @@ -0,0 +1,20 @@ +#include <cstdio> +using namespace std; + +int +main() +{ + char move, res; + long total = 0; + while (scanf("%c %c ", &move, &res) == 2) { + move -= 'A'; + res -= 'X'; + if (!(0 <= move && move < 3)) throw "bad input"; + if (!(0 <= res && res < 3)) throw "bad input"; + + int outcome = (res - move + 4) % 3; /* 0 loss, 1 draw, 2 win */ + long score = outcome * 3 + res + 1; + total += score; + } + printf("%ld\n", total); +} |