/* -*- coding: utf-8 -*- * * 708.cc: No.708 (+ー)の式 - yukicoder */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; /* constant */ /* typedef */ /* global variables */ char s[128]; /* subroutines */ int expr(char *(&cpt)); int term(char *(&cpt)) { if (*cpt == '(') { cpt++; // '(' int r = expr(cpt); cpt++; // ')' return r; } return *(cpt++) - '0'; } int expr(char *(&cpt)) { int r = term(cpt); while (*cpt == '+' || *cpt == '-') { char op = *(cpt++); int r1 = term(cpt); if (op == '+') r += r1; else r -= r1; } return r; } /* main */ int main() { scanf("%s", s); char *cpt = s; printf("%d\n", expr(cpt)); return 0; }