λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
"곡뢀" π‘Ÿπ‘’π‘π‘œπ‘Ÿπ‘‘/π΄π‘™π‘”π‘œπ‘Ÿπ‘–π‘‘β„Žπ‘š

[Python/λ°±μ€€] 1541 : [그리디 μ•Œκ³ λ¦¬μ¦˜] μžƒμ–΄λ²„λ¦° κ΄„ν˜Έ

by ΰ·† Yoni ΰ·† 2022. 1. 26.
728x90

1541 : [그리디 μ•Œκ³ λ¦¬μ¦˜] μžƒμ–΄λ²„λ¦° κ΄„ν˜Έ

μ‹œκ°„ μ œν•œ: 2 Sec  λ©”λͺ¨λ¦¬ μ œν•œ: 128 MB

 

 

1541번: μžƒμ–΄λ²„λ¦° κ΄„ν˜Έ

첫째 쀄에 식이 주어진닀. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으둜 이루어져 있고, κ°€μž₯ 처음과 λ§ˆμ§€λ§‰ λ¬ΈμžλŠ” μˆ«μžμ΄λ‹€. 그리고 μ—°μ†ν•΄μ„œ 두 개 μ΄μƒμ˜ μ—°μ‚°μžκ°€ λ‚˜νƒ€λ‚˜μ§€ μ•Šκ³ , 5μžλ¦¬λ³΄λ‹€

www.acmicpc.net

 

 

문제 μ„€λͺ…

μ„Έμ€€μ΄λŠ” μ–‘μˆ˜μ™€ +, -, 그리고 κ΄„ν˜Έλ₯Ό 가지고 μ‹μ„ λ§Œλ“€μ—ˆλ‹€. 그리고 λ‚˜μ„œ μ„Έμ€€μ΄λŠ” κ΄„ν˜Έλ₯Ό λͺ¨λ‘ 지웠닀.
그리고 λ‚˜μ„œ μ„Έμ€€μ΄λŠ” κ΄„ν˜Έλ₯Ό 적절히 μ³μ„œ 이 μ‹μ˜ 값을 μ΅œμ†Œλ‘œ λ§Œλ“€λ €κ³  ν•œλ‹€.
κ΄„ν˜Έλ₯Ό 적절히 μ³μ„œ 이 μ‹μ˜ 값을 μ΅œμ†Œλ‘œ λ§Œλ“œλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

μž…λ ₯

첫째 쀄에 식이 주어진닀. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으둜 이루어져 있고, κ°€μž₯ 처음과 λ§ˆμ§€λ§‰ λ¬ΈμžλŠ” μˆ«μžμ΄λ‹€. 그리고 μ—°μ†ν•΄μ„œ 두 개 μ΄μƒμ˜ μ—°μ‚°μžκ°€ λ‚˜νƒ€λ‚˜μ§€ μ•Šκ³ , 5μžλ¦¬λ³΄λ‹€ 많이 μ—°μ†λ˜λŠ” μˆ«μžλŠ” μ—†λ‹€. μˆ˜λŠ” 0으둜 μ‹œμž‘ν•  수 μžˆλ‹€. μž…λ ₯으둜 μ£Όμ–΄μ§€λŠ” μ‹μ˜ κΈΈμ΄λŠ” 50보닀 μž‘κ±°λ‚˜ κ°™λ‹€.

좜λ ₯

첫째 쀄에 정닡을 좜λ ₯ν•œλ‹€.

μž…λ ₯ μ˜ˆμ‹œ 1

55-50+40

좜λ ₯ μ˜ˆμ‹œ 1

-35

μž…λ ₯ μ˜ˆμ‹œ 2

10+20+30+40

좜λ ₯ μ˜ˆμ‹œ 2

100

μž…λ ₯ μ˜ˆμ‹œ 3

00009-00009

좜λ ₯ μ˜ˆμ‹œ 3

0

My μ½”λ“œ

# μ–‘μˆ˜, +, -, () λ§Œμ„ μ‚¬μš©
# κ΄„ν˜Έλ₯Ό 적절히 μ³μ„œ
# μ‹μ˜ 값을 μ΅œμ†Œλ‘œ λ§Œλ“€κΈ°

result = 0

# μž…λ ₯받은 식을
# λ§ˆμ΄λ„ˆμŠ€λ₯Ό κΈ°μ€€μœΌλ‘œ split ν•΄μ£ΌκΈ°
# 이걸 κ°€μž₯ λ¨Όμ € ν•˜λŠ” 것이 μ€‘μš” !!
numbers = input().split('-')

# 첫번째 μ›μ†Œμ— + κ°€ μžˆλŠ” 경우λ₯Ό λŒ€λΉ„
# + λ₯Ό κΈ°μ€€μœΌλ‘œ split ν•΄μ„œ μ •μˆ˜ν˜•μœΌλ‘œ λͺ¨λ‘ 더해주기
for i in numbers[0].split('+'):
    result += int(i)

# λΊ„μ…ˆ μ—°μ‚° 갯수λ₯Ό μ΅œλŒ€λ‘œ λ§Œλ“€κΈ°
# λ‘λ²ˆμ§Έ μ›μ†ŒλΆ€ν„°λŠ” - λ’€μ˜ λ§μ…ˆλ“€μ€ λͺ¨λ‘ κ΄„ν˜Έλ‘œ λ¬Άμ–΄μ€˜μ•Ό 함
# μ΄λ ‡κ²Œ ν•΄μ•Ό μ΅œμ†Ÿκ°’μ„ ꡬ할 수 있음
# + λ₯Ό κΈ°μ€€μœΌλ‘œ split ν•΄μ„œ μ •μˆ˜ν˜•μœΌλ‘œ λͺ¨λ‘ λΉΌμ£ΌκΈ°
for i in numbers[1:]:
    for j in i.split('+'):
        result -= int(j)

# μ •λ‹΅ 좜λ ₯
print(result)
728x90

λŒ“κΈ€