PS

[๋ฐฑ์ค€] 10707 ์ˆ˜๋„์š”๊ธˆ with Python

ํ˜•์ค€_It's 2023. 4. 10. 17:05
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ“Œ BOJ 10707 ์ˆ˜๋„์š”๊ธˆ

๐Ÿ’ก ์กฐ๊ฑด

  1. JOI๊ตฐ์ด ์‚ด๊ณ  ์žˆ๋Š” ์ง€์—ญ์—๋Š” X์‚ฌ์™€ Y์‚ฌ, ๋‘ ๊ฐœ์˜ ์ˆ˜๋„ํšŒ์‚ฌ๊ฐ€ ์žˆ๋‹ค.
    ๋‘ ํšŒ์‚ฌ์˜ ์ˆ˜๋„์š”๊ธˆ์€ ํ•œ ๋‹ฌ๊ฐ„ ์ˆ˜๋„์˜ ์‚ฌ์šฉ๋Ÿ‰์— ๋”ฐ๋ผ (2)๋ฒˆ๊ณผ ๊ฐ™์ด ์ •ํ•ด์ง„๋‹ค.

  2. X์‚ฌ : 1๋ฆฌํ„ฐ๋‹น A์—”.
    Y์‚ฌ : ๊ธฐ๋ณธ์š”๊ธˆ์€ B์—”์ด๊ณ , ์‚ฌ์šฉ๋Ÿ‰์ด C๋ฆฌํ„ฐ ์ดํ•˜๋ผ๋ฉด ์š”๊ธˆ์€ ๊ธฐ๋ณธ์š”๊ธˆ๋งŒ ์ฒญ๊ตฌ๋œ๋‹ค.
    ์šฉ๋Ÿ‰์ด C๋ฆฌํ„ฐ๊ฐ€ ๋„˜์—ˆ์„ ๊ฒฝ์šฐ ๊ธฐ๋ณธ์š”๊ธˆ B์—”์— ๋”ํ•ด์„œ ์ถ”๊ฐ€์š”๊ธˆ์ด ๋ถ™๋Š”๋‹ค.
    ์ถ”๊ฐ€์š”๊ธˆ์€ ์‚ฌ์šฉ๋Ÿ‰์ด C๋ฆฌํ„ฐ๋ฅผ ๋„˜์—ˆ์„ ๊ฒฝ์šฐ 1๋ฆฌํ„ฐ๋ฅผ ๋„˜์—ˆ์„ ๋•Œ๋งˆ๋‹ค D์—”์ด๋‹ค.

  3. JOI๊ตฐ์˜ ์ง‘์—์„œ ํ•œ ๋‹ฌ๊ฐ„ ์“ฐ๋Š” ์ˆ˜๋„์˜ ์–‘์€ P๋ฆฌํ„ฐ์ด๋‹ค.

  4. ์ˆ˜๋„์š”๊ธˆ์ด ์ตœ๋Œ€ํ•œ ์‹ธ๊ฒŒ ๋˜๋„๋ก ์ˆ˜๋„ํšŒ์‚ฌ๋ฅผ ๊ณ ๋ฅผ ๋•Œ, JOI๊ตฐ์˜ ์ง‘์˜ 1๋‹ฌ๊ฐ„ ์ˆ˜๋„์š”๊ธˆ์„ ๊ตฌํ•˜์—ฌ๋ผ.

  5. ์ž…๋ ฅ๋˜๋Š” ์ •์ˆ˜ A,B,C,D,P๋Š” ์ „๋ถ€ 1 ์ด์ƒ 10000 ์ดํ•˜์ด๋‹ค.

  6. ์ˆ˜ํ•™, ์‚ฌ์น™์—ฐ์‚ฐ ์œ ํ˜•์˜ ๋ฌธ์ œ

๐Ÿ”– ์˜ˆ์ œ ๋ฐ ์‹คํ–‰๊ฒฐ๊ณผ

์˜ˆ์ œ 1

9
100
20
3
10

์‹คํ–‰๊ฒฐ๊ณผ 1

90

์˜ˆ์ œ 2

8
300
100
10
250

์‹คํ–‰๊ฒฐ๊ณผ 2

1800

โŒจ๏ธ ๋ฌธ์ œ ํ’€์ด

  1. JOI๊ตฐ์ด ์‚ฌ์šฉํ•œ ์ˆ˜๋„์˜ ์–‘ P ๊ฐ€ ์ƒํ•œ C ๋ณด๋‹ค ๋†’๋‹ค๋ฉด, min(a * p, (p - c) * d + b))

    • a * p : X ์‚ฌ ์š”๊ธˆ
    • (p - c) * d : ์ƒํ•œ ์ด์ƒ์œผ๋กœ ์‚ฌ์šฉํ•œ ์ˆ˜๋„์˜ ์–‘ * ์ถ”๊ฐ€์š”๊ธˆ
  2. JOI๊ตฐ์ด ์‚ฌ์šฉํ•œ ์ˆ˜๋„์˜ ์–‘ P ๊ฐ€ ์ƒํ•œ C ๋ณด๋‹ค ๋‚ฎ๋‹ค๋ฉด, min(a * p, b)

๐Ÿ–ฅ ์†Œ์Šค ์ฝ”๋“œ

from sys import stdin

a, b, c, d, p = [int(stdin.readline()) for _ in range(5)]
ans = min(a * p, (p - c) * d + b) if p > c else min(a * p, b)
print(ans)
๋ฐ˜์‘ํ˜•