My Dream Being Visualized

Day 4: 백준 [8단계] 기본 수학 1 - 벌집 본문

Algorithm

Day 4: 백준 [8단계] 기본 수학 1 - 벌집

마틴킴 2021. 4. 9. 19:00
728x90

[결과]

 

[코드]

초기값과 카운터값을 두고, input값보다 작거나 같을 때 까지 6씩 더해서 비교. 카운터를 쓸 수 밖에 없었을까?

 

[과정]

1. 규칙을 찾고자 했음.

첫 번째 1 > 두 번째 6 > 세 번째 12 > 네 번째 18 > ...

첫 번째를 제외하고 6씩 늘어난 값보다 작거나 같으면 해당 n번째 방을 지난다고 구현할 수 있음.

 

[공부]

[문제]

www.acmicpc.net/problem/2292

 

2292번: 벌집

위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌

www.acmicpc.net

 

[선배 개발자들의 코드 분석]

정말 다양한 식이 있었다. 접근하는 방식이 다양해보인다. 

시간과 메모리는 비슷하나 코드길이만 다르다. 

가독성 차원에서 아무런 설명을 해주지 않았을 땐 가독성이 떨어지지 않을까.. 싶다.

 

[느낀점]

컴퓨터는 정말 신기한 게, 정답은 있지만 다양하게 구현할 수 있으며 하나만 바뀌어도 서로 알고리즘 논리구조가 다르다는 것이다.

좋은 코드란 뭘까?