분류 전체보기

    [백준] 3055번 탈출 - JavaScript(NodeJS)

    문제 3055번: 탈출 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제 www.acmicpc.net 코드 const sol = (input) => { let answer = 0; const [R, C] = input[0].split(" ").map(Number); const map = input.slice(1).map((str) => str.split("")); const check = Array(R) .fill() .map((_) => Array(C).fill(0)); let D, S; let water = []; for (let i = 0; i < R; i++) ..

    2021 네이버 부스트캠프 코딩테스트 1차, 2차 후기

    2021 네이버 부스트캠프 코딩테스트 1차, 2차 후기

    나를 잠깐 소개하자면 개발 공부를 한지 8개월차인 공돌이 출신(산업공학) 웹 프론트 개발자이다. 혼자 공부하는 비전공자로서 항상 빠르게 발전할 방법을 모색하다가 부스트캠프를 발견했다. 그때가 4월 중순이었고 평소에 하던 프로젝트를 하면서 추가로 코딩테스트를 위한 공부를 시작했다. 부스트캠프에 응시하기 전에 우아한 테크캠프에 지원했었고 감사하게도 2차 코딩테스트까지 갔지만, 2차 테스트에서 처음 풀어보는 웹 페이지 구현 유형에 한시간정도 갈피를 못잡았고 부랴부랴 열심히 코드 치다가 끝났던 경험이 있다. 당연히 광탈했지만 2차 응시의 기회를 주신 것만으로도 너무 감사했고 그 때 부스트캠프가 곧 열린다는 소식을 듣고 열심히 준비했다. 삼성의 saffy도 모집을 했었으나, 교육 기간과 커리큘럼의 속도를 고려했을..

    [백준] 1316번 그룹 단어 체커 - JavaScript(NodeJS)

    문제 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 코드 function sol(input) { let answer = 0; const n = +input[0]; for (let i = 1; i { input.push(line); }) .on("close", () => { console.log(sol(input)); process.exit(); }); 풀이 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. ccazzzzbb는 c,..

    [백준] 1037번 약수 - JavaScript(NodeJS)

    문제 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net 코드 // 1. 최대, 최소값 function sol(input) { const divisors = input[1].split(" "); return Math.min(...divisors) * Math.max(...divisors); } // 2. 정렬을 해서 처음 인덱스, 마지막 인덱스를 이용해도 가능 function sol(input) { const divisors = input[1].split(" ").sort((a, b) => a - b); ..

    [백준] 1152번 단어의 개수 - JavaScript(NodeJS)

    문제 1152번: 단어의 개수 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 www.acmicpc.net 코드 function sol(input) { input = input.trim(); if (input === "") return 0; return input.split(" ").length; } // 백준에서 입력을 받는 코드 require("readline") .createInterface(process.stdin, process.stdout) .on("line", (line) => { console.log(sol(line)); }) .on("clos..

    [프로그래머스] 2개 이하로 다른 비트 - 자바스크립트

    [프로그래머스] 2개 이하로 다른 비트 - 자바스크립트

    문제 코딩테스트 연습 - 2개 이하로 다른 비트 programmers.co.kr 코드 무지성 코드(시간 초과) function solution(numbers) { function f(x) { if (x % 2 === 0) return x + 1; const bit = x.toString(2); let idx = 0; let len; while (true) { len = 0; idx++; let nextBit = (x + idx).toString(2); const diff = nextBit.length - bit.length; len += diff + nextBit .slice(diff) .split("") .filter((b, i) => b !== bit[i]).length; if (len 1로 바꿔주고..