์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ/BOJ_Python

[BOJ/Step8] 2869 : ๋‹ฌํŒฝ์ด๋Š” ์˜ฌ๋ผ๊ฐ€๊ณ  ์‹ถ๋‹ค (Python)

NaNaRin๐Ÿ™ƒ 2021. 2. 10. 17:44

www.acmicpc.net/problem/2869

 

2869๋ฒˆ: ๋‹ฌํŒฝ์ด๋Š” ์˜ฌ๋ผ๊ฐ€๊ณ  ์‹ถ๋‹ค

์ฒซ์งธ ์ค„์— ์„ธ ์ •์ˆ˜ A, B, V๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด์„œ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ B < A ≤ V ≤ 1,000,000,000)

www.acmicpc.net


๋ฌธ์ œ

๋•… ์œ„์— ๋‹ฌํŒฝ์ด๊ฐ€ ์žˆ๋‹ค. ์ด ๋‹ฌํŒฝ์ด๋Š” ๋†’์ด๊ฐ€ V๋ฏธํ„ฐ์ธ ๋‚˜๋ฌด ๋ง‰๋Œ€๋ฅผ ์˜ฌ๋ผ๊ฐˆ ๊ฒƒ์ด๋‹ค.

๋‹ฌํŒฝ์ด๋Š” ๋‚ฎ์— A๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ, ๋ฐค์— ์ž ์„ ์ž๋Š” ๋™์•ˆ B๋ฏธํ„ฐ ๋ฏธ๋„๋Ÿฌ์ง„๋‹ค. ๋˜, ์ •์ƒ์— ์˜ฌ๋ผ๊ฐ„ ํ›„์—๋Š” ๋ฏธ๋„๋Ÿฌ์ง€์ง€ ์•Š๋Š”๋‹ค.

๋‹ฌํŒฝ์ด๊ฐ€ ๋‚˜๋ฌด ๋ง‰๋Œ€๋ฅผ ๋ชจ๋‘ ์˜ฌ๋ผ๊ฐ€๋ ค๋ฉด, ๋ฉฐ์น ์ด ๊ฑธ๋ฆฌ๋Š”์ง€ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

 

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ์„ธ ์ •์ˆ˜ A, B, V๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด์„œ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ B < A ≤ V ≤ 1,000,000,000)

 

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— ๋‹ฌํŒฝ์ด๊ฐ€ ๋‚˜๋ฌด ๋ง‰๋Œ€๋ฅผ ๋ชจ๋‘ ์˜ฌ๋ผ๊ฐ€๋Š”๋ฐ ๋ฉฐ์น ์ด ๊ฑธ๋ฆฌ๋Š”์ง€ ์ถœ๋ ฅํ•œ๋‹ค.

 

์˜ˆ์ œ ์ž…๋ ฅ 1

2 1 5

 

์˜ˆ์ œ ์ถœ๋ ฅ 1

4

 

์˜ˆ์ œ ์ž…๋ ฅ 2

5 1 6

 

์˜ˆ์ œ ์ถœ๋ ฅ 2

2

 

์˜ˆ์ œ ์ž…๋ ฅ 3

100 99 1000000000

 

์˜ˆ์ œ ์ถœ๋ ฅ 3

999999901


ํ’€์ด

๋‹ฌํŒฝ์ด๋Š” ๋‚ฎ์— A๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐ€๊ณ  ๋ฐค์— B๋ฏธํ„ฐ ๋–จ์–ด์ง„๋‹ค. ํ•˜๋ฃจ์— A-B๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐ€๋ฉฐ, ์ด V๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐ€์•ผ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ๋‚ ์—๋Š” ๋‚ฎ์— A๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐ€ ์ •์ƒ์— ๋„๋‹ฌํ•˜๊ธฐ๋•Œ๋ฌธ์— ๋ฏธ๋„๋Ÿฌ์ง€์ง€ ์•Š๋Š”๋‹ค. ๋”ฐ๋ผ์„œ ๋งˆ์ง€๋ง‰ ๋‚ ์—” V๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐ„๋‹ค.

Aday - B( day - 1 ) >= V ์ธ day๋ฅผ ๊ตฌํ•ด์•ผ ํ•œ๋‹ค. (day์ผ ๋™์•ˆ ๋‚ฎ์—” A๋ฏธํ„ฐ ์˜ฌ๋ผ๊ฐ€๊ณ  day-1์ผ ๋™์•ˆ ๋ฐค์— B๋ฏธํ„ฐ ๋–จ์–ด์ง)

๋‹ค์Œ ์‹์„ ์ •๋ฆฌํ•˜๋ฉด, day >= ( V - B ) / ( A - B )

1. math ๋ชจ๋“ˆ์„ importํ•˜์—ฌ math.ceil() ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ๋‹ค

# 2869.py

import math

a, b, v = map(int, input().split())

print(math.ceil((v-b)/(a-b)))