1. 多 case 匹配
bool paren(const char exp[], int lo, int hi){
stack<char> S;
for (int i = lo; i <= hi; ++i){
case '(': case '[': case '{': S.push(exp[i]); break;
case ')': if (S.empty() || S.top() != '(') return false; break;
case ']': if (S.empty() || S.top() != '[') return false; break;
case '}': if (S.empty() || S.top() != '{') return false; break;
default: break;
}
return S.empty();
}