CF1159A A pile of stones

题目描述

Vasya 有一堆石子,这堆石子的数量为某个正整数。他进行了 $n$ 次操作,每次操作要么从堆中取出一颗石子,要么向堆中加入一颗石子。在每次取出石子的操作前,石子堆都不是空的。 现在给定 Vasya 进行的 $n$ 次操作。请你求出在完成这些操作后,石子堆中可能剩下的最小石子数。

输入格式

第一行包含一个正整数 $n$,表示 Vasya 进行了多少次操作($1 \leq n \leq 100$)。 第二行包含一个长度为 $n$ 的字符串 $s$,仅由字符“-”和“+”组成。如果第 $i$ 次操作 Vasya 取出一颗石子,则 $s_i$ 为“-”;如果加入一颗石子,则 $s_i$ 为“+”。

输出格式

输出一个整数,表示完成这 $n$ 次操作后,石子堆中可能剩下的最小石子数。

说明/提示

在第一个样例中,如果一开始石子堆中有 $3$ 颗石子,经过所有操作后,石子数为 $0$。不可能再更少了,所以答案是 $0$。注意,初始石子数不能小于 $3$,否则在某些操作时石子堆会变空,无法继续取石子。 在第二个样例中,如果一开始石子堆中有 $0$ 颗石子,经过所有操作后,石子数为 $4$。不可能再更少了,因为 $4$ 次操作都增加了石子数,所以答案是 $4$。 在第三个样例中,如果一开始石子堆中有 $1$ 颗石子,经过所有操作后,石子数为 $1$。可以证明,无法让最终石子数更少。 在第四个样例中,如果一开始石子堆中有 $0$ 颗石子,经过所有操作后,石子数为 $3$。 由 ChatGPT 4.1 翻译