프로그래머스 - 숫자 문자열과 영단어 문제를 보고 뭔가 금방 풀 수 있을 것 같았다.. 꼭 마지막 예외처리에 안 되어버리면 붙들고 있게 되는데 오늘은 이 마지막단계에서 이 문제를 3시간 동안 붙들고 있었다 ㅠㅠ 다른 분들이 푼 답을 보니 정규표현식으로 해결이 가능한 것이었다. 어제 정규표현식 관한 문제를 풀어서 생각을 안 했던 것은 아닌데 안 쓰고 풀고 싶었나 보다.. 제출 답안 내가 제출한 답안은 테스트 케이스가 무조건 오름차순일 때나 내림차순으로 쓰였을 때, sort()를 쓰면 정렬이 되므로 정답처리까지는 되었을 것이다. 하지만 문제는 오름차순이나 내림차순이 아니며, 랜덤으로 배치되고 중복까지 허용한다. "1zerotwozero3" 은 1020으로 나와야했고, 내 코드는 뒤에 zero를 체크하지못해 ..
프로그래머스 - 로또의 최고 순위와 최저 순위 문제는 위 링크에서 볼 수 있다. 문제에 대한 해설보다는 기억하고 싶은 개념, 사고, 문법을 기록하는 글이다. 답안은 맨 아래에 표기해 두었다. 프로그래머스 1단계부터 풀어보았다. 그래서인지 풀 수는 있었지만, 난 아직 많이 부족하기 때문에 오래 걸리긴 했다. 결국에 풀었던 코드도 괜찮다고 생각했는데 답안 제출 후 상위에 있는 풀이를 보는데 저번에 공부했던 filter()를 이용한 간단한 풀이라 또 배웠다. 접근방법 1. lottos에서 0의 개수와 win_nums와 매치되는 숫자의 개수를 변수를 지정해 뽑았다. - zeroCount, matchCount 문제를 보고 리턴 값에 최대 랭크와 최소 랭크로 출력해야 해서 최대, 최소 링크를 어떻게 구할지 고민했다..
프로그래머스 - 베스트앨범 지난 포스트에서는 여러 조건 별로 변수를 나누어서 풀었다면, 이번에는 프로그래머스에서 가장 좋아요를 많이 받은 풀이법에 대해 설명하고자 한다. 너무 깔끔하고, 배열 메서드중에서 몰랐던 기능도 알게되어 여러모로 유익했고 닮고싶은 풀이다. 이번 풀이 역시 주어진 테스트케이스에는 조건3. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 를 확인할 수 없으므로 테스트케이스에 값을 하나 더 추가했다. 따라서 원하는 출력값은 [4, 1, 3, 5] 가 되겠다. const genres = ["classic", "pop", "classic", "classic", "pop", "classic"]; const plays = [500, 600, 150, 80..
프로그래머스 - 베스트 앨범 문제는 위 링크에서 볼 수 있다. 문제에 대한 해설보다는 기억하고 싶은 개념, 사고, 문법을 기록하는 글이다. 답안은 맨 아래에 표기해 두었다. 답안 풀이 이번 문제는 처음부터 끝까지 접근하고 푸는 방식을 적는 게 도움이 될 것 같아서 풀이를 해보려 한다. 이 풀이 말고 프로그래머스에서 best에 있는 풀이법도 가져왔는데, 그건 정말 신박해서 기억하고 싶었다. 그에 대한 풀이는 여기서 확인하면 된다. 참고로 주어진 테스트 케이스에는 조건 3. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 를 확인할 수 없어서 테스트 케이스에 값을 하나 더 추가했다. 따라서 원하는 출력 값은 [4, 1, 3, 5]가 되겠다. const genres = ..
프로그래머스 - 위장 문제는 위 링크에서 볼 수 있다. 문제에 대한 해설보다는 기억하고 싶은 개념, 사고, 문법을 기록하는 글이다. 답안은 맨 아래에 표기해 두었다. 1. reduce() 메서드로 object형태 만들기 reduce()는 자신을 호출한 배열의 요소를 순화하면서 인수로 전달된 콜백함수를 반복 호출한다. 그리고 콜백함수의 반환값을 다음 순회 시에 콜백 함수의 첫 번째 인수로 전달하면서 콜백 함수를 호출하여 하나의 결과값을 만들어 반환한다. 해시 관련 문제는 key:value 형태로 변환하는 형식으로 풀어야하는 것 같다. 저번 풀이에도 reduce()를 이용했는데 이번에도 같은 방식으로 시작했다. 이 때 for문을 써도 되지만, reduce()를 쓰면 더 간편하게 object형태로 만들 수 있..
프로그래머스 - 완주하지 못한 선수 문제는 위 링크에서 볼 수 있다. 문제에 대한 해설보다는 기억하고 싶은 개념, 사고, 문법을 기록하는 글이다. 답안은 맨 아래에 표기해 두었다. 이 문제의 난이도는 쉬운편이었지만, 카테고리에 맞게 해시를 이용해 푸는 방법도 가져왔다. 프로그래머스 문제를 풀면 사람들이 어떻게 풀었는지 볼 수 있는데 진짜 천재들이 많은듯하다.. 답안 1. find() 메서드로 찾는다. find() 또한 ES6에 도입된 메서드이다. 자신을 호출한 배열의 요소를 순화하면서 인수로 전달된 콜백함수를 호출하여 반환값이 true인 첫 번째 요소를 반환한다. true인 요소가 존재하지 않는다면 undefined를 반환한다. let answer = participant.find((v, i) => v ..
프로그래머스 - 다리 위를 지나는 트럭 문제는 위 링크에서 볼 수 있다. 문제에 대한 해설보다는 기억하고 싶은 개념, 사고, 문법을 기록하는 글이다. 답안은 맨 아래에 표기해 두었다. 구현 능력 너무나 대놓고 큐(queue)의 개념을 활용하면 되는 문제였다. 문제를 몇개 안 풀어 봤지만 보통 for문보다는 while문을 더 활용하는 것 같다. 큐(queue)문제는 shift()와 push()를 활용하면 좋다. 이 문제를 풀 때 처음에 지나간 트럭을 passedTruck이라는 변수에 담았는데, 생각해보니 지나간 트럭을 담을 필요가 없었고, 그냥 몇 초가 걸리는지만 변수에 숫자를 담아 증가시키면 되는 문제였다. 코드를 작성하고 불필요한 것은 없는지 더 생각해봐야겠다. 기억하기 1. fill() 메서드로 배열..
프로그래머스 - 프린터 백준에서 풀었던 문제랑 똑같다. 그 때도 자바스크립트,파이썬 둘다 풀어봤는데, 이번에는 아래 링크와 같은 파이썬 풀이 방식으로 자바스크립트를 사용해 풀어보았다. [백준] 1996번 프린터큐 - 파이썬(python) [백준] 1966번 프린터큐 - 파이썬 python 백준 1966 번 프린터큐 항해 99 심화반은 파이썬으로 알고리즘을 풀어야 한다. Javascript도 아직 신생아라고 생각하는데 갑자기 python으로 leekcode medium 급 문제를 풀게 되었다. 물론 나는 접근도 하지 algoroot.tistory.com 여담이지만 프로그래머스는 입력값을 따로 변수로 선언해 분리하는 작업이 필요하지 않아 편리했다. 그리고 ui적으로도 보기 더 편한하고, testcase도 추..
- Total
- Today
- Yesterday
- React
- 리액트네이티브
- css
- github
- 프로그래머스
- 네트워크
- React Query
- 실전프로젝트
- 프로그래머스 자바스크립트
- 자바스크립트
- javascript
- 타입스크립트
- 자바스크립트 클로저
- 모두를위한컴퓨터과학
- GIT
- 항해99
- 무한스크롤
- network
- 백준
- 모두를 위한 컴퓨터 과학
- 자바스크립트 비동기 처리
- cs50
- python
- 프로그래머스 베스트앨범 자바스크립트
- 리액트
- 클로저
- 알고리즘자바스크립트
- html
- 자바스크립트알고리즘
- reactquery
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |