수학 사고력을 기르기위한 문제들.
1000 70 170
고정 지출(a) 과 생산비용(b)가 있고, 판매수익(c)가 있다.
최초로 이익이 발생하는 판매량을 구하고, 순익분기점이 존재하지 않으면 -1을 출력한다.
a, b, c = map(int, input().split())
if b >= c:
print(-1)
else:
print(a // (c - b) + 1)
먼저 b >= c 를 사용한 이유는, 순익분기점 즉 1원이라도 순이익이 있어야 순익분기점이 존재하지만,
생산비용이 판매수익을 넘을시 존재하지않기때문에 -1을 출력하는 if문을 사용하였다.
a // (b - c) + 1 은 170에 생산비용을 뺀 값을 고정지출에 나누면 출력은 10이 나온다.
하지만 1 을 더한 이유는, 당일을 더한값이다.
N킬로그램을 정확하게 구해야 한다. 3킬로그램과 5킬로그램 두개의 값만 존재하고, 두개의 값을 최소한만 사용하여 N의 값에 도달하여야 한다.
ex) x는 18의 값이 주어진다.
x = int(input())
if x % 5 == 0:
print(x // 5)
우선 x의 값을 5로 나눴을때 나머지값이 0 나온다면 5의 배수이기 때문에 x에 5를 나눠주면 최소한의 값을 구할수있다.
elif x % 5 == 3:
print(x // 5 + 1)
그러고나서 5로 나눴을대 몫이 3이 남으면 x 에 5을 나누고 위에 3키로그램 하나의 값을 더한 값을 출력한다
elif x // 5 - 1 >= 0 and x - (5 * (x // 5 - 1)) == 6:
print((x // 5 - 1) + 2)
elif x // 5 - 1 >= 0 and x - (5 * (x // 5 - 1)) == 9:
print((x // 5 - 1) + 3)
elif x // 5 - 2 >= 0 and x - (5 * (x // 5 - 2)) == 12:
print((x // 5 - 2) + 4)
위에 코드는 5키로그램을 사용할수 없을때의 값을 구하여 3키로그램만을 사용한 갯수를 구하는 코드이다.
else:
print(-1)
마지막으로 주어진 값이 3키로와 5키로를 사용하여 정확한 갯수를 구할 수 없을때 -1을 출력하도록 하였다.