N = int(input()) - 1
# 지나가는 벌집 방의 갯수
result = 1
for i in range(1, N+1):
N = N - ((i * 6))
result += 1
if N == 0:
result -= 1
elif N < 0:
break
print(result)
🔑 코드 구현보다 규칙찾는게 더 어려웠다.🤢🤢🤢
규칙을 찾아보면 첫번째 벌집은 1개이고 값은 1, 두번째에는 6개 벌집이 생성되고 2~7까지의 값을 갖고, 세번째에는 12개의 벌집이 생성되고 8~19까지의 값을 갖는다. 네번째에는 18개의 벌집이 생성되고 20~37, 다섯번째에는 24개의 벌집이 생성되고 38~61까지의 값을 갖는다.
위와 같은 규칙을 갖고있음!!
💡+ 구글링하다가 본 좋은코드
N = int(input())
cnt = 1
while N > 1:
N -= (6 * cnt)
cnt += 1
print(cnt)
변수를 일일이 지정해주지 않아 코드가 많이 간결해짐! 나도 언젠간 이런코드를..!!😭