전체 글
[Programmers] LV1: 카카오 신규아이디 추천 (JavaScript)
문제 // 너무 코드가 길고 작성하는데 시간이 많이 걸렸다... 거의 1시간 // 대부분 2시간 ~ 3시간안에 적어도 3문제 이상을 해결해야하는데 이렇게 코드를 작성하다가는 // 시간안에 다른 문제를 풀지 못할 것 같다.. // 다른 알고리즘 고수분들은 어떻게 풀었을지.. 다른 사람의 풀이와 검색을 통해 확인을 해봐야겠다!! // 무슨 7줄에 해결을... 이래서 정규표현식 정규표현식 하는건가 ㅠ.ㅠ // 문자를 다루는 문제를 해결할 떄는 정규표현식을 활용해서 푸는 연습을 해보아야겠다. function solution(new_id) { const maxLength = 15; const minLength = 3; let recommendationID = replaceUppercaseToLowercase(ne..
[Baekjoon] 바이러스
문제 1번 컴퓨터를 통해 웜 바이러스에 걸리게 되는 컴퓨터의 수를 출력하는 프로그램을 작성하시오. 풀이 BFS(너비우선탁색), Queue(큐)를 이용하여 해결 주어진 input값으로 이루어진 graph를 생성 컴퓨터들의 상태가 담길 distance를 생성 1번 컴퓨터와 연결된 모든 컴퓨터를 0 => 1 로 변경 distance 배열중 1인 요소들의 개수를 return Code const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n'); const [total, node, ...list] = input const graphElements = li..
[Programmers] 크레인 인형뽑기 게임 (JavaScript)
문제 설명 게임화면인 2차원 배열과 크레인을 작동시킨 위치 배열이 주어졌을 경우 동일한 2개의 인형이 이웃하여 터진 모든 인형의 수를 구하는 문제 풀이과정 ✨ [stack, for ... of] 뽑은 인형들이 들어갈 stack 자료구조의 basket 생성 index를 이용하여 답을 도춣해낼 것이기 때문에 첫번째 요소가 0인 moveIndexList를 새롭게 생성 2중 for ... of 문을 사용하여 행으로 구분된 전체 배열 `board 를 탐색함 item (뽑기로 뽑은 아이템)이 존재할 때 해당 아이템이 basket의 마지막 아이템과 일치한다면 basket.pop()해주고 answer에 터진 아이템 개수를 더해줌 그렇지 않다면 basket의 마지막 요소로 push해줌 마지막으로 뽑은 자리의 인형번호를 ..