Deep Learning/Algorithm

백준 1712, 2292

frances._.sb 2022. 3. 21. 14:09
728x90

 

#1712
a = int(input()) # a: 고정비용 b: 가변비용 c: 노트북 가격
b = int(input())
c = int(input())

if b >= c:
  print(-1)
else:
  print(int(a/(c-b) +1))

 

처음 봤을 땐 글부터 이해를 하지 못했다 ㅋㅋ 천천히 읽어보자면,

 

 x = 생산 대수일 때, a+b*x < c*x 인 x를 찾아내는 손익분기점 값
 x = a/(c-b)이면 총비용 = 총수입

  → 결과를 출력할 땐 +1을 해줌으로써 생산 대수를 구할 수 있다.
 * 만약 b >= c 이면 손익분기점을 가질 수가 없다. 손해가 커지니까!

 

수학적인 계산만 해낸다면 생각해낼 수 있는 문제였다.

 

 

 

#2292
n = int(input())
room = 1
move = 6
cnt = 1

while n > room:
  room += 6*cnt
  cnt += 1
print(cnt)

 

단순하게 1 - 6 - 12 - 18 - 24 - ... 일 때

1 - (2,...,7) - (8,...,19) - (20,...,37) - ... 의 숫자를 가지게 된다.

∴ 배수를 해준만큼 (=cnt)를 구하면 된다.

728x90
반응형

'Deep Learning > Algorithm' 카테고리의 다른 글

백준 10250  (0) 2022.03.24
백준 2869  (0) 2022.03.23
백준 1193  (0) 2022.03.22
백준 2941,1316  (0) 2022.03.21
백준 1152,2908,5622  (0) 2022.03.21