온라인 저지에서 클린 코드를 추구할 수 없을까

읽기 편한 코드 VS 이해하는데 시간이 걸리지만 빠른 코드 나는 제 3자가 읽어도 개념적 구조를 무리 없이 이해할 수 있게 “무엇을 넣고, 어떤 것이 기대하는지” 신경을 쓰며 코드를 작성한다. 그러나 백준 온라인 저지의 문제를 매일 최소 한문제씩 풀고, 23시에 회고를 하는 “데일리 백준” 모임에 참여하게 되면서 이런 취향에서 어느 정도까지 타협을 해야 될지 고민하고 있다. 제 3자가 무리 없이 개념적 구조를 이해할 수 있는가? ‘무리 없이’라는 것은 코드 자체가 컴퓨터에서 느릴 수 있지만, 사람에게 ‘구문’으로서 쉽게 이해할 수 있다는 나의 주관적인 가치이다....

2020년 5월 5일 · 2 분 · 365 단어 · 김무훈

프로그래머스: 43165, 타겟 넘버

위 글은 2020년 03월 21일에 발행되었습니다. 비슷한 주제의 포스팅을 연속적으로 나열하고자 위해 1년 앞당긴 점 양해 부탁드립니다. 🙇 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-1+1 = 3 +1+1+1+1-1 = 3 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하도록 solution 함수를 작성해주세요....

2019년 3월 3일 · 2 분 · 309 단어 · 김무훈

BOJ: 2667 단지번호 붙이기

위 글은 2020년 03월 20일에 발행되었습니다. 비슷한 주제의 포스팅을 연속적으로 나열하고자 위해 1년 앞당긴 점 양해 부탁드립니다. 🙇 문제 <그림 1>과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집들의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. <그림 2>는 <그림 1>을 단지별로 번호를 붙인 것이다....

2019년 3월 3일 · 2 분 · 315 단어 · 김무훈