javascript 37

[프로그래머스/JavaScript] 숫자 변환하기

https://school.programmers.co.kr/learn/courses/30/lessons/154538 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 이것도 꽤 시간이 걸린 문제.... 사실 푸는 방법은 단순하게 생각해서 풀 수는 있는데 시간초과가 자꾸 나서.. 방법이 뭔지 모르겠어서 ... 한참을 고민했다 그래서 질문하기도 찾아보고, 여러 블로그에서 다른 분들 푸는 방법을 봤는데 일단..dp로 푸는 방법이 있었다 근데 일단 내가 dp에 대해 아직 서툴기도 하고 해서 내가 그나마 자신있는 bfs 방식으로 하기로 했다! 근데 이제 시..

[프로그래머스/JavaScript] 최고의 집합

https://school.programmers.co.kr/learn/courses/30/lessons/12938 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 이거 진짜 하루종일 잡고 있다가 참고자료 찾아보고 바로 풀려서 허무한 문제.. 레벨3 치고는 쉬운 것 같은데, 내가 너무 어렵게 접근한 것 같다 처음에는 '질문하기'를 보았는데 문과인 나는.. 도저히 해석하지를 못했다 ㅠㅅㅠ 대충.. 느낌상 말해보자면 1. 같은 숫자로 나눌 수 있으면 그것이 곱의 최대 2. 같은 숫자로 나눌 수 없으면 최대한 나눈 후 나머지 더해줌 인 것 같은데.. 아..

[프로그래머스/JavaScript] 점프와 순간 이동

https://school.programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 이 문제도 며칠간을 끙끙대다가 겨우 풀었는데 생각해보면 좀 어이없다.. 일단 나는 우선 이 문제를 자료형 Map 을 이용해서 key에 현재 있는 칸, value에 건전지 사용량을 저장했었다 Map 을 하나 만들어서 재귀함수를 이용해서 값을 넣어주고 그다음 값은 재귀로 또 보고 또 보고.. 이런 식으로 진행했으나 자바스크립트는 재귀의 깊이가 한정되어 있기 때문에 오류가 떴다 그래서 재귀함..

[프로그래머스/JavaScript] 카펫

https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 처음에는 어떻게 풀어야 할지 감이 안 오다가, 완전탐색 문제는 어차피 하나하나 확인하는 수밖에 없다고 생각하고 풀었더니 맞히게 되었다 우선 노란색 격자들이 안쪽에 배치되고, 이후에 그 둘레를 갈색 격자들이 감싸고 있는 형태이기 때문에 노란색 타일이 어떻게 배치되느냐에 따라 카펫의 가로, 세로 길이가 결정되므로 난 먼저 노란색 타일을 깔아본다고 생각했다. 하지만 여기서, 가로의 길이가 세..

[프로그래머스/JavaScript] H-Index

https://school.programmers.co.kr/learn/courses/30/lessons/42747?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 사실 별 거 없는 문제인데 문제의 예시가 citations 배열 내의 값이어서 한 가지 착각을 했다 문제의 답은, 즉 h-index는 ciations 배열 안에 없을 수도 있다는 것! 이것만 생각하면 그냥 0부터 citations 의 길이만큼 돌면서 h-index를 갱신해나가면 된다 간만에 level 2 치고 좀 간단했던 문제! 2) 최종 소스코드 f..

[프로그래머스/JavaScript] 구명보트

https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 이 문제는.. 진짜 며칠간 풀었었다 사실 풀고 나니까 와.. 진짜 별 거 아니었구나 싶은데 왜 그렇게 안 풀렸는지😂 처음에는 단순하게 그냥 구명보트 개수 변수 count, 현재 사람과 구명보트를 탈 수 있는 최대 무게 find, 그리고 현재 요소 cur을 변수로 두고 문제를 풀었다 그리고 효율성을 위해 내림차순으로 sort 시켰는데, 내림차순으로 한 이유는 그냥 제일 작은 요소부터 꺼내..

[프로그래머스/JavaScript] 다음 큰 숫자

https://school.programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 레벨2에 들어와서 유독 진법변환 문제를 많이 푸는 듯~ 덕분에 진법 변환하는 건 완전히 익혔다 이 문제는 내가 이제까지 익힌 것들을 모두 총정리하는 느낌이었다 1. toString(2) 으로 이진법으로 표현할 수 있음 2. 문자열을 spread 문법으로 펼치면 배열 만들 수 있음 3. filter()는 배열 각 요소에 대하여 주어진 함수의 결과값이 true인 모든 요소 모아서 새 배열 ..

[프로그래머스/JavaScript] 이진 변환 반복하기

https://school.programmers.co.kr/learn/courses/30/lessons/70129 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 저번에 자바스크립트에서 진법 변환하는 방법을 올렸었는데, 그거에 대한 응용 ver 라고 생각이 드다 이 문제에서는 이진변환을 하는데, 이진 변환에는 총 두 단계가 있다 x의 모든 0을 제거합니다. x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다. 이 두 단계를 마치면 이진변환 한 번이 완료되는 것이다 1번의 경우에는 split을 이용했다. split 함수 안..

[프로그래머스/JavaScript] 올바른 괄호

https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 사실 휴학시절에 c++로 제일 많이 풀었던 문제가, 올바른 괄호인지 아닌지 스택을 이용해서 체크하는 문제였어서 레벨 2여도 손쉽게 풀 수 있었다! 테케도 다 맞고, 정답 제출에서도 모두 정답으로 나왔는데 내 발목을 잡는 건 효율성 문제 였다 😥 일단 문자열 s 를 탐색하면서 ( 여는 괄호의 경우에는 스택 배열에 넣어주고, ) 닫는 괄호일 경우 stack 의 제일 최근 요소를 pop 해서..

[프로그래머스/JavaScript] 2016년

https://school.programmers.co.kr/learn/courses/30/lessons/12901 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 이 문제는 우선 두개의 배열을 먼저 만들었다 하나는 요일을 출력하기 위해 요일 출력문구를 담아놓은 배열(days)이고, (이 배열은 금요일부터 목요일의 순으로 만듦. 1월 1일이 금요일이라는 설정때문에!) 다른 하나는 12개월동안의 한달의 날짜 수(cal)이다. 우선 인자로 받는 월, 즉 a 이전 달까지 날짜 수를 더해준다. 배열로 돌리면 금방 돌리고, 바로 거기에 ~일, 을 나타내는 ..

728x90