#include using namespace std; using ll = long long; #ifdef LOCAL #include #else #define dbg(...) 0 #define dbgn(...) 0 #endif void solve() { int n; string s; cin >> n >> s; vector seq; for(int i = 0; i < n; i++) { if (s[i] == '-') { seq.push_back(-1e8 - i); } else if (s[i] == '0') { seq.push_back(0); } else if (s[i] == '+') { seq.push_back(1e8 + i); } } vector lis; for(int x : seq) { auto it = upper_bound(lis.begin(), lis.end(), x); if (it == lis.end()) lis.push_back(x); else *it = x; } cout << lis.size() << '\n'; } int32_t main() { cin.tie(0)->sync_with_stdio(0); solve(); return 0; }