코테준비
[백준 / 파이썬] 2292번 벌집
지숭숭숭
2024. 1. 10. 14:51
n = int(input())
s = 1
d = 6
room = 1
if n == 1:
print(1)
else:
while(1):
s = s + d
room += 1
if n <= s:
print(room)
break
else:
d +=6
1 - 7 - 19 - 37 - 61
6 12 18 24
공차가 6인 등차수열
6씩 증가하고 지나갈 때마다 방 1개 증가
처음 위치에서 6씩 더해주고 그 후에 방을 옮겨 가니까 +1
처음에 입력받은 n이 현재 위치 s보다 작거나 같아지면 현재 있는 방의 위치 출력하고 멈춘다
입력받은 수 n이 현재 위치인 s보다 크다면 공차에 6을 더해준 후 다시 현재 위치에 d를 더해준다
ex) 입력받은 수가 13이고 현재 위치가 7이라면 d += 6, 7 = 7 + 12 = 19 room = 3이 되고 다시 if문으로 갔을 때 13 <= 19가 되기 때문에 room 출력 후 break
728x90