728x90
문제 출처:https://www.acmicpc.net/problem/2292
2292번: 벌집
위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌
www.acmicpc.net
1. 코드:
1
2
3
4
5
6
7
8
9
10
|
num = int(input())
wax=1 #방 1개 지나는 숫자 부터 시작 = 1번방
cnt =1
while num > wax:
wax += 6 * cnt #벌집이 6의 배수로 증가
cnt +=1 #반복문 반복
print(cnt)
|
cs |
2. 해결과정
지나야하는 방의 갯수를 살펴보면 1개는 1 하나
2개는 2~7까지 숫자 6개
3개는 8~19까지 숫자 12
... 즉 숫자들이 6개씩 증가한다는 규칙을 발견할 수 있다.
찾고자하는 숫자가 어디 줄에 속해있는지 찾고 cnt값을 출력해주면 된다.
3. 느낀점
파이썬을 하도 안하다가 오랜만에 하니까 생각보다 너무 어렵다 ㅋㅋ
728x90
'공부 자료 > 알고리즘' 카테고리의 다른 글
(Python/파이썬) 백준 11050번 - 이항 계수 1 (0) | 2021.07.30 |
---|---|
(Python/파이썬) 백준 2441번 - 별 찍기 -4 (0) | 2021.07.30 |
(C/C++) 백준 2343번 - 기타 레슨 (0) | 2021.07.29 |
(C/C++) 백준 2110번 - 공유기 설치 (0) | 2021.07.28 |
(C/C++) 백준 1654번 - 랜선 자르기 (0) | 2021.07.27 |