//#ifndef coutAIO_H #include <iostream>//数据类型前面加mutable可以避免常函数中。 #include <windows.h>//Ctrl+K+C一键注释,Ctrl+K+U一键去释 /* ——— —— —— —— —— —— */ #include <conio.h> #include <stack> #include <algorithm> #include <cmath> #include <vector> #include <cstdio> #include <string> #include <cstring> #include <cstdlib> #include <ctime> #include <fstream> #include <iomanip> #define MAX 1000//最大数字量 using namespace std; long long sz[10000][10000];//数组,用于分解整数 string str1, str2, str3=""; long long jc(long long a) {//阶乘(!a) long long k = 1; for (long long i = 0; i < a; i++) { k*=i; } return 1; } long long zsws(long long a) {//求整数位数 short b = 0; while (a) { a /= 10; b++; } return b; } void fj(long long a) {//分解整数各位 long long b = zsws(a), i; while (b--) { sz[0][b] = a % 10; a /= 10; } } void xycfb(long long x = 9, long long y = 9) {//把xy乘法表存在sz里。 for (long long i = 0; i < x; i++) { for (long long j = 0; j < y; j++) { sz[i][j] = (i + 1) * (j + 1); } } } void scsz(long long x = 9, long long y = 9) {//输出数组 for (int i = 0; i < x; i++) { for (int j = 0; j < y; j++) { cout << sz[i][j] << "\t"; } cout << endl; } } void sccfb(long long a = 9, long long b = 9) {//输出ab乘法表 xycfb(a, b); scsz(a, b); } long long fbnq(long long a) {//斐波那契数列求和 if (a > 2) return fbnq(a - 1) + fbnq(a - 2); return 1; } void printsz(char* arr[]) {//打印数组 long long i = 0; for (; *arr != NULL; arr++) { cout << i << " " << *arr << endl;//第几个被输出与 i++; } } //以上新添 void gotoxy(int y, int x) { COORD coord; coord.X = x; coord.Y = y; HANDLE a = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorPosition(a, coord); } bool isprime(long long a) { long long l = 0; if (a == 2) { return true; } else if (a%2 == 0) { return false; } else { for (size_t m = 3; m < a; m+=2) { if (a % m == 0) { return false; } } return a; } } void color(int a)//打印颜色 { /*亮白*/ if (a == 0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); /*蓝色*/ if (a == 1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN | FOREGROUND_BLUE); /*绿色*/ if (a == 2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN); /*紫色*/ if (a == 3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_BLUE); /*红色*/ if (a == 4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED); /*黄色*/ if (a == 5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN); /*深蓝色*/ if (a == 6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE); /*土黄色or金黄色*/ if (a == 7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN); /*灰色接近白*/ if (a == 8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); } void bukaqingping() { gotoxy(0, 0);/* for (int i = 0; i < 50; i++) { cout << " " << endl; }*/ system("cls"); gotoxy(0, 0); } template<typename T> void swap(T & a, T & b) { T temp = a; a = b; b = temp; } long long numberaio(char* n) { long long i = 0; while(true){ if (n[i] == '\0') { return i; } i++; } } void coutAIO(string b, int truefalse0 = 0, bool truefalse1 = 0) {//说的话,速度,是否回车。 int i = 0, s = 0; long long a = b.size(); while (a != 0) { color(2); /* s = rand() % 9; if (a != 0 && s == 0) { color(0); } if (a != 0 && s == 1) { color(1); } if (a != 0 && s == 2) { color(2); } if (a != 0 && s == 3) { color(3); } if (a != 0 && s == 4) { color(4); } if (a != 0 && s == 5) { color(5); } if (a != 0 && s == 6) { color(6); } if (a != 0 && s == 7) { color(7); } if (a != 0 && s == 8) { color(8); }*/ cout << b[i]; a--; i++; if (truefalse0 == 1) { Sleep(10); } if (truefalse0 == 2) { Sleep(20); } if (truefalse0 == 3) { Sleep(40); } if (truefalse0 == 4) { Sleep(100); } if (truefalse0 == 5) { Sleep(300); } if (truefalse0 == 6) { Sleep(1000); } } if (truefalse1 == 0) { cout << endl; } } constexpr size_t tmp_FNV_offset_basis = 2166136261U; constexpr size_t tmp_FNV_prime = 16777619U; size_t hash(string Hash) {//求哈希值 string str = Hash; size_t val = tmp_FNV_offset_basis; for (int i = 0; i < str.length(); ++i) { val ^= static_cast<size_t>(str[i]); val *= tmp_FNV_prime; } return val; } string Hex1, Hex2, strans; int DecArr[MAX] = { 0 }; void Reverse(char* s ) {//新轮子,翻转字符串 int n=numberaio(s); for (int i = 0, j = n - 1; i < j; i++, j--) { char c = s[i]; s[i] = s[j]; s[j] = c; } } int main() { /*FILE* stream; freopen_s(&stream,"源.in","r",stdin); freopen_s(&stream,"源.out", "w", stdout);*/ char ch; long long ans = 0; while (cin >> ch, ch != '/') { if (ch < 123 && ch >= 97) { if (ch % 3 == 1) { ans++; } else if (ch % 3 == 2) { ans += 2; } else{ ans += 3; } } else { ans++; } } cout << ans << endl; system("pause"); bukaqingping(); return 0; }