[ 2023-06-23 ๐Ÿฆ‰ TIL ]

Burkeyยท2023๋…„ 6์›” 23์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
105/157

๋ฐฑ์ค€ 1459๋ฒˆ ํŒŒ์ด์ฌ


๋ฌธ์ œ


์ฝ”๋“œ

import sys

input = sys.stdin.readline

x, y, w, s = map(int, input().split())

total_time = 0

while True:
  if x == 0 and y == 0 :
    break
  elif x == 0 or y == 0 :
    if x == 0:
      if w < s : # ์ง์„  ์‹œ๊ฐ„์ด ๋น ๋ฅผ ๋•Œ
        total_time += (y * w) # y๊ธธ์ด ๋งŒํผ๋งŒ ์ง์„  ์ด๋™.
      else: # ๋Œ€๊ฐ์„ ์ด ๋น ๋ฅผ ๋•Œ
        if (y % 2) == 0: 
          total_time += (y * s) # y๊ธธ์ด ๋งŒํผ๋งŒ ๋Œ€๊ฐ์„ ์œผ๋กœ ์ด๋™
        else : # ๋Œ€๊ฐ์„ ์œผ๋กœ ์ด๋™ ํ•˜๊ณ  ๋‚˜๋จธ์ง€๋Š” ๊ฐ€๋กœ๋กœ ์ด๋™
          total_time += ((((y // 2) * 2) * s) + w)
      y = 0
    else:
      if w < s : # ์ง์„  ์‹œ๊ฐ„์ด ๋น ๋ฅผ ๋•Œ
        total_time += (x * w) # x๊ธธ์ด ๋งŒํผ๋งŒ ์ง์„  ์ด๋™.
      else: # ๋Œ€๊ฐ์„ ์ด ๋น ๋ฅผ ๋•Œ
        if (x % 2) == 0: 
          total_time += (x * s) # x๊ธธ์ด ๋งŒํผ๋งŒ ๋Œ€๊ฐ์„ ์œผ๋กœ ์ด๋™
        else : # ๋Œ€๊ฐ์„ ์œผ๋กœ ์ด๋™ ํ•˜๊ณ  ๋‚˜๋จธ์ง€๋Š” ๊ฐ€๋กœ๋กœ ์ด๋™
          total_time += ((((x // 2) * 2) * s) + w)
      x = 0
  else:
    if (2 * w) < s: # ์ง์„ ์ด ๋น ๋ฅผ ๋•Œ
      total_time += (x * w) + (y * w)
      x, y = 0, 0
    else : # ์งญ์€ ๊ฑฐ๋ฆฌ ๊ธฐ์ค€์œผ๋กœ ๋Œ€๊ฐ์„  ์ด๋™
      if x > y:
        total_time += (y * s) 
        x -= y
        y = 0
      else :
        total_time += (x * s)
        y -= x
        x = 0      
        
print(total_time)

๋‚ด ์ฝ”๋“œ๋ณด๊ณ  ํ† ํ• ๋ป”...๐Ÿคข ๋ณด๊ธฐ๋งŒ ํ•ด๋„ ์–ด์ง€๋Ÿฝ..

profile
์Šคํƒฏ ์˜ฌ๋ฆฌ๋Š” ์ค‘

0๊ฐœ์˜ ๋Œ“๊ธ€