코딩테스트/백준
백준 [2292] - 벌집
문제
작성한 코드
import sys
input = sys.stdin.readline
N = int(input())
start = 1
least = 1
while N > start:
start = start + 6 * least
least += 1
print(least)
*규칙 찾기
: 1부터 시작하고, 6의 배수만큼씩 증가한다.
1 (1)
2 3 4 5 6 7 (6)
8 9 10 11 12 13 14 15 16 17 18 19 (12) ...
- sys.stdin.readline을 input에 할당하여 사용한다.
- input()으로 문자를 입력받아 int형으로 형변환하여 N에 저장한다. (숫자 N)
- start에 1을 할당하여, 1부터 시작한다는 것을 나타낸다.
- least를 1로 초기화하여, 입력한 값 N까지의 최소 개수 방을 지나는지 나타낸다.
- while N > start: N이 start보다 클 동안만 반복문 while문을 돌린다.
- 방들이 6의 배수만큼씩 증가하기 때문에 least에 6을 곱해주고, 해당 값을 시작점인 start에 더해주어 다시 start에 할당한다.
- 이후 least를 1씩 증가해준다.
- 위와 같이 계속 start를 증가해주다가 N보다 start가 커지면 while문을 멈추고, 그 때의 least 값을 print()로 출력해준다.
반응형
'코딩테스트 > 백준' 카테고리의 다른 글
백준 [2869] - 달팽이는 올라가고 싶다 (0) | 2022.08.24 |
---|---|
백준 [1193] - 분수찾기 (0) | 2022.08.24 |
백준 [1712] - 손익분기점 (0) | 2022.08.23 |
백준 [1316] - 그룹 단어 체커 (0) | 2022.08.23 |
백준 [2941] - 크로아티아 알파벳 (0) | 2022.08.23 |
댓글