본문 바로가기

전체 글

(107)
[Programmers] 카카오 인턴십키패드 누르기 - Javascript INDEX https://school.programmers.co.kr/learn/courses/30/lessons/67256 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 휴대전화 키패드에서 왼쪽 열 [1,4,7,*] 은 왼손으로, 오른쪽 열 [3,6,9,#] 은 오른손으로 입력하고 가운데 열 [2,5,8,0] 은 왼손과 오른손에서 거리가 가까운 손으로 터치하되, 같은 거리면 주어진 hand로 터치를 합니다. 키패드 간의 거리 계산을 위해 좌표 개념을 이용합니다. 숫자 1을 원점 [0, 0]으로 해서 가로와 세로 좌표로 모든 키패드에 있는..
[Programmers] 2022 KAKAO BLIND RECRUITMENT신고 결과 받기 - Javascript INDEX https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution HashMap 구조를 활용해서 풀어야 할 것 같은 느낌이 듭니다. 우선 정답을 담을 Array 를 만듭니다. let answer = new Array(id_list.length).fill(0); 신고당한 녀석이 아닌, 신고를 한 녀석이 받을 메일 개수를 카운트 할 배열입니다. 배열은 순서가 중요합니다. 예를들어 id_list 에 [muzi, frodo, apeach, n..
[Programmers] 기사단원의 무기 - Javascript INDEX https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 약수를 구하는 알고리즘을 구현하는게 핵심입니다. 예를 들어 number 가 4인 경우 1, 2, 3, 4의 각 약수를 구해 Array 에 담는다면 단순하겠지만 시간초과에 걸릴겁니다. number의 약수라는건 그 약수들의 곱으로 number 를 만들 수 있다는 의미이므로 1부터 시작해서 만들 수 있는 배수의 개수를 세주었습니다. number 가 4인 경우, [0, 0, ..
2022 KAKAO TECH INTERNSHIP - 성격 유형 검사하기 INDEX https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 저는 최대한 코드를 한눈에 알아보기 쉽게 작성하는 걸 좋아합니다. 이번 문제도 알아보기 쉽고 단순한 코드로 작성했습니다. 총 16가지의 성격 유형이 있고, 주어지는 대답과 그에 따른 점수표를 완성하여 조건에 맞는 성격유형을 반환해야 합니다. survey의 각 원소는 앞에서부터 비동의에 대한 유형, 동의에 대한 유형 순서로 이루어져 있습니다. choices는 각 항목에 ..
2023 KAKAO BLIND RECRUITMENT-개인정보 수집 유효기간 INDEX https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 주어지는 오늘 날짜와 계약한 날짜의 차이를 구해서 약관기한보다 초과된 계약번호를 return 하면 됩니다. 문제에서 모든 달은 28일까지 있다고 강력한 힌트를 주었습니다. 그럼 오늘 날짜를 일로 환산하고 계약일자를 일자로 환산해서 이 둘의 차이를 약관기한 * 28 과 비교하면 됩니다. function solution(today, terms, privacies) { le..
초성 검색 기능 구현하기 INDEX Stack #VanillaJS, #Jquery Preview 이번 포스팅은 초성 검색 알고리즘을 참고해 실무에 적용해 본 기능에 대한 내용입니다. 검색 기능 중 마치 노래방 검색기능 초성 검색 기능이 있으면 매우 편리해집니다. 대부분의 금융앱에서 이체 내역 화면을 보면 계좌번호 혹은 상대방의 이름을 통해서 검색해 원하는 계좌만 볼 수 있도록 하는 기능들 많이 보셨을 겁니다. 이 알고리즘을 활용된 부분입니다. Array.prototype.includes(), String.prototype.includes()를 사용해 문자열에서 원하는 원소를 찾는 방법을 사용할 수도 있지만 초성 검색 기능 혹은 한 문자열 안에서 이어져있는 문자열만 찾는 것이 아니라 좀 떨어져 있는 문자열도 찾는 기능을 추가하면 ..
[Nodejs] 프로그래머스 우리싸인 API 서버 개발 과제분석[3] 이전 글에 이어 요건 4번부터 진행해 보겠습니다. 요건 4. 보안 문서 정보가 노출되면 안 되기 때문에 보안에 각별히 신경을 써야 합니다. 4.1. 사이트 간 요청 위조 (Cross-site request forgery, CSRF, XSRF) 차단 src/middlewares/csrf.middleware를 구현해 주세요. express-session과 csrf 라이브러리가 이미 설치되어 있습니다. 해당 라이브러리를 이용해서 csrf 미들웨어를 작성해 주세요. csrf 라이브러리 문서는 여기에서 확인할 수 있습니다. 요청이 들어올 때마다 token을 생성해서 응답 해더 x-csrf-token로 내려주세요. /api path로 요청이 오면, secret을 생성해서 세션에 저장해 주세요 /api path가 아..
[Nodejs] 프로그래머스 우리싸인 API 서버 개발 과제분석[2] 이전 글에서는 프로젝트 구조와 이미 구현되어 있는 signup 과정을 맛보기로 둘러보았습니다. 이번 글에서는 실제 요건을 하나씩 해결해보려 합니다. 요건 1. API 응답 포맷 정상처리 및 오류처리에 대한 API 서버 공통 응답 포맷을 아래와 같이 정의합니다. 정상처리 및 오류처리 모두 success 필드를 포함합니다. 정상처리라면 true, 오류처리라면 false 값을 출력합니다. 정상처리는 response 필드를 포함하고 error 필드는 null입니다. 응답 데이터가 단일 객체라면, response 필드는 JSON Object로 표현됩니다. 응답 데이터가 스칼라 타입(string, number, boolean)이라면, response 필드는 string, number, boolean로 표현됩니다. ..