(Swift) 백준 1712 손익분기점

SteadySlower·2022년 5월 14일
0

Coding Test

목록 보기
29/298

1712번: 손익분기점

let input = readLine()!.split(separator: " ").map { Int(String($0))! }
let A = input[0]
let B = input[1]
let C = input[2]

let profit = C - B

if profit <= 0 {
    print(-1)
} else {
    print(A / profit + 1)
}
  1. 처음에는 판매량을 1씩 더해가는 방법을 사용해야하나 생각했지만 A, B, C의 크기를 감안하면 시간초과가 날 가능성 100%입니다.
  2. 따라서 개당 판매 수익을 구한 후에
    1. 개당 판매 수익이 0 이하면 절대 손익분기점을 넘을 수 없으므로 -1
    2. 0 이상이면 고정비용을 나누어서 수익이 나는 시점의 판매량을 구하면 된다.

⭐️ Int와 Int 사이의 나눗셈

Int로 Int를 나누면 Int가 나옵니다. 소수점 아래 숫자는 버립니다. 예를 들면 5 / 2 = 2가 됩니다. 따라서 위에 A / profit + 1을 하면 A / profit이 나누어 떨어질 때도 혹은 그렇지 않을 때도 원하는 손익분기점을 구할 수 있게 됩니다.

profile
백과사전 보다 항해일지(혹은 표류일지)를 지향합니다.

0개의 댓글