LoginSignup
0
0

More than 3 years have passed since last update.

Codeforces Round #559 A. A pile of stones

Posted at

題意

  • あなたは最初x個の石を持っていた
  • + (石を場からとる)か - (石を場に置く)をした
  • この間-にて手元から石がなくなることはなかった
  • 最後に手元にある石の最小数を述べよ

アプローチ

最初に0個石を持っていたとして、足りなくなる最小の石の数を求めます。この分の石を最初持っておけばよいです。
この数の石を初期値にした上で、再度シミュレーションすればよいです。
※あるいは上記で求めた最後の値にこの足りなくなる数を足しても良いです。(コードはこちらのアプローチ)

n = int(input())
s = input()
mi = 0
c = 0
for i in range(n):
    if s[i] == "+":
        c += 1
    else:
        c -= 1
        mi = min(mi, c)
c -= mi
print(c)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0