#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define ll long long #define ull unsigned long long using namespace std; int main() { string type, s; for (int i = 1; i <= 4; i++) { int m = 0; cin >> type; if (type == "unsigned") cin >> type; cin >> s; if (type == "char") m = 1; else if (type == "short") m = 2; else if (type == "int") m = 4; bool ok = false; int rez = 0; int num = 0, auxNum = 0; for (int j = 0; j < s.size(); j++) { if (s[j] == '[') { ok = true; continue; } if (s[j] == ']') { if (auxNum == 0) auxNum = 1; auxNum *= num; num = 0; continue; } if (s[j] == ',' && ok == false) { rez += m; continue; } else if (s[j] == ',' && ok == true) { ok = false; rez += m * auxNum; auxNum = 0; continue; } if (s[j] >= '0' && s[j] <= '9') num = num * 10 + int(s[j] - 48); } if (ok == false) rez += m; if (auxNum != 0) rez += m * auxNum; cout << rez << "\n"; } /* char marint,a[20] int b[2],c[1],d,e unsigned int d short a,b,c,d[2][2][2],munsigned */ return 0; }