우당탕탕 개발일기
[프로그래머스 / 자바스크립트] x만큼 간격이 있는 n개의 숫자 본문
728x90
지독하다 지독해. 아침부터 지독한 문제를 만났다.
입출력 예를 찬찬히 뜯어보니
x값부터 시작해 x * n값까지의 숫자들의 나열을 구하라는 것이므로 '반복문' 사용될 것 같은 느낌 빡!
문제는 이 이해한걸 어떻게 코드로 변환하지..? 😂
첫번째로 정리했던 나의 코드 💡
function solution(x, n) {
var answer = [];
for (var i=1; i<=n; i++){
answer += x * i
}
return answer
}
answer 선언과 return을 깔끔하게 제거하는 방법에 익숙해지고싶다..! 하지만 지금은 절대 못버려🙂...
i=0으로 넣으니까 나열이 0부터 시작되는 매직. 246이 아닌 0246...
그래서 1부터 시작되게끔 설정을 하고, 결과를 정리하니까 나왔다!
나왔긴 나왔는데
😭 "246810"으로 나왔다 😭
쉼표를 어떻게 넣어...? 리스트 형태는 어디 간거야....?
요만큼만 더 하면 될텐데.. 얼추 비슷하게 나와서 그런지 더 근질근질하다.
조금만 바꿔도 답안이 천차만별로 바뀌어서 크게 건들이지도 못하고 끙끙대는 중.
.
.
.
💡최종 코드
function solution(x, n) {
var answer = [];
for (let i = 1; i<=n; i++){
answer.push(x*i);
}
return answer;
}
알고보니 행렬의 덧셈과 연관되는 문제였다. 뭔가 찝찝~하다 싶었는데!
행렬의 덧셈 문제를 풀었으면 좀 쉽게 접근했었을까 😂
구글링 결과 슬쩍 보고 다음에 공부해야지하며 지나갔던게 내 문제에서 이렇게 크게 작용하다니.. 반성해야겠다..
💪🏻 부족했던 점
- var answer = []; 이 빈 리스트임을 인식해야겠다. 이 문제는 비어 있는 리스트에 넣어야하는 거였다!
최종적으로 구현해야하는 방법을 찾는게 미숙하다. 그리고 그 구현방법들은 생각보다 단순하다. - .push 함수를 알지못한게 제일 큰 패인......
.push() 는 배열에! 데이터 값을 넣을 때!! 이용하는 것이라고 한다.
정말이지 이 문제에 찰떡인게 아닐 수가 없다..^^...
행렬의 덧셈 다시 풀러 가야지...
📍 출처 : https://programmers.co.kr/learn/courses/30/lessons/12954
728x90
'What I Learned > Algorithm' 카테고리의 다른 글
[프로그래머스 / 자바스크립트] 수박수박수박수박수박수? (0) | 2022.01.24 |
---|---|
[프로그래머스 / 자바스크립트] 내적 (0) | 2022.01.24 |
[프로그래머스 / 자바스크립트] 없는 숫자 더하기 (1) | 2022.01.24 |
[프로그래머스 / 자바스크립트] 음양더하기 (0) | 2022.01.24 |
[프로그래머스 / 자바스크립트] 가운데 글자 가져오기 (0) | 2022.01.24 |