#pragma GCC optimize("O3") #include using namespace std; #define rep(i, a, n) for (int i = a; i < (int)(n); i++) using ll = long long; int main() { int n; string s; cin >> n >> s; vector minus(n + 1, 0), plus(n + 1, 0); rep(i, 0, n) { minus[i + 1] = minus[i], plus[i + 1] = plus[i]; if (s[i] == '-') { minus[i + 1]++; } else if (s[i] == '+') { plus[i + 1]++; } } int ans = 0; rep(i, 0, n) { if (s[i] == '0') { ans = max(ans, minus[i] + plus[n] - plus[i] + 1); } else if (s[i] == '+') { ans = max(ans, minus[i] + plus[n] - plus[i - 1]); } else { ans = max(ans, minus[i] + plus[n] - plus[i]); } } cout << ans << endl; }