#include using namespace std; using i32 = int; using i64 = long long; #define int i64 signed main() { int n; cin >> n; string s; cin >> s; vector neg(n); vector zeros(n); vector pos(n); neg[0] = s[0] == '-'; for (int i = 1; i < n; i++) { neg[i] = neg[i - 1] + (s[i] == '-'); } zeros[0] = max((int)(s[0] == '0'), neg[0]); for (int i = 1; i < n; i++) { int zer = s[i] == '0' ? 1 : 0; zeros[i] = max(neg[i - 1] + zer, zeros[i - 1]); } pos[0] = (s[0] == '+'); for (int i = 1; i < n; i++) { int opt = s[i] == '+' ? 1 : 0; pos[i] = max({pos[i - 1] + opt, zeros[i - 1] + opt, neg[i - 1] + opt}); } cout << pos[n - 1] << endl; }