์ƒˆ์†Œ์‹

๐Ÿงฎ PS

๋ฐฑ์ค€ (boj) 1541 ํŒŒ์ด์ฌ - ๋ถ„์‚ฐ์ฒ˜๋ฆฌ

  • -

๋ฌธ์ œ ๋งํฌ : https://www.acmicpc.net/problem/1541

 

1541๋ฒˆ: ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ

์ฒซ์งธ ์ค„์— ์‹์ด ์ฃผ์–ด์ง„๋‹ค. ์‹์€ ‘0’~‘9’, ‘+’, ๊ทธ๋ฆฌ๊ณ  ‘-’๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๊ฐ€์žฅ ์ฒ˜์Œ๊ณผ ๋งˆ์ง€๋ง‰ ๋ฌธ์ž๋Š” ์ˆซ์ž์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฐ์†ํ•ด์„œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์—ฐ์‚ฐ์ž๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๊ณ , 5์ž๋ฆฌ๋ณด๋‹ค ๋งŽ์ด ์—ฐ์†๋˜๋Š” ์ˆซ์ž๋Š” ์—†๋‹ค. ์ˆ˜๋Š” 0์œผ๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

www.acmicpc.net

 

๋ฌธ์ œ ์กฐ๊ฑด : ์ฒซ๊ธ€์ž๋Š” ๋ฌด์กฐ๊ฑด ์ˆซ์ž๋กœ ์‹œ์ž‘ํ•œ๋‹ค. 

-> ์ฒซ ์ˆซ์ž๋ถ€ํ„ฐ ~ ๋งˆ์ด๋„ˆ์Šค(-)๊ฐ€ ๋‚˜์˜ค๊ธฐ ์ „๊นŒ์ง€๋Š” +๋กœ ํ•ด์•ผํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ฒซ๋ฒˆ์งธ ๋งˆ์ด๋„ˆ์Šค(-) ์ดํ›„ ๋ถ€ํ„ฐ๋Š” ๊ด„ํ˜ธ๋กœ ๋ฌถ๊ธฐ ๋•Œ๋ฌธ์— ์ „๋ถ€ ๋งˆ์ด๋„ˆ์Šค์ด๋‹ค.

 

 

 

num = list(map(str,input().split("-")))

if "+" in num[0] :   # ์ฒซ๋ฒˆ์งธ ๋งˆ์ด๋„ˆ์Šค(-) ์ „์— ํ”Œ๋Ÿฌ์Šค๊ฐ€ ์—ฐ์†๋  ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„
    arr= list(map(int,num[0].split("+")))
    answer = sum(arr)
else : answer = int(num[0])  



for i in range(1,len(num)):  # ์ฒซ๋ฒˆ์งธ ๋งˆ์ด๋„ˆ์Šค(-) ์ดํ›„๋ถ€ํ„ฐ๋Š” ์ „๋ถ€ ๋งˆ์ด๋„ˆ์Šค๋กœ ์ฒ˜๋ฆฌํ•ด์•ผํ•จ.
    if "+" in num[i] :
        arr = list(map(int,num[i].split("+")))
        answer -= sum(arr)
    else : answer -= int(num[i])
    
print(answer)

* ํ…Œ์ŠคํŠธ ํ–ˆ๋˜ ๋ฐ˜๋ก€ :

#1+1+1+1-1 (+๊ฐ€ ์—ฐ์†๋˜๋Š”๊ฒฝ์šฐ)

#1-1-1-1-1 (-๊ฐ€ ์—ฐ์†๋˜๋Š”๊ฒฝ์šฐ)

#88+33+33  (-๊ฐ€ ์—†๋Š”๊ฒฝ์šฐ)

 

 

 

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.