목록코딩테스트 (78)
seunghyun Note
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 고득점 키트에 해시가 있어서 문제를 해결해보려고 했다. 1. 해시를 담을 테이블을 생성한다. 2. phone_book의 배열값(문자열)을 index에 넣고 true로 값을 채운다. 3. 다시 문자열 배열을 순회시키면서 slice를 통해 [1,2,3] 이면 [1] , [1,2]까지만 pre로 넣어서 테이블에 있다면 return false를 하고 최종적으로 없으면 return tr..
링크 : https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 문제 풀이 1. cro 배열에 크로아티아 문자를 넣어준다. 2. 순회 시켜 replaceAll을 통해 있을 경우 "x"로 바꾼다 (x가 아닌 다른 문자여도 된다. 하지만 cro배열에 있는 요소면 안된다.) 3. 마지막으로 순회가 끝났다면 문자열의 길이를 측정해서 출력한다. const fs = require("fs"); const input = fs.r..
링크 : https://www.acmicpc.net/problem/10988 10988번: 팰린드롬인지 확인하기 첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다. www.acmicpc.net 문제 풀이 1. reverse와 join을 사용해서 reverse 된 값을 비교해서 return 하기 const input = require("fs").readFileSync("/dev/stdin").toString().trim(); const reverse = input.split("").reverse().join(""); console.log(input === reverse ? 1 : 0);
링크 : https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 문제 풀이 이진트리, 2중 for문(시간 초과로 문제 해결이 안 된다.) 등 다양한 방법이 있지만 해시를 공부하기 때문에 해시를 사용하고 싶었다. Set의 객체를 사용하여 has를 사용할 것이다. set 중에서도 set.has를 이용해서 포함 여부를 확인한다. Set.prototype.has() has() 메서드는 Set 객체에 주어진 요소..
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 오늘은 하루종일 해시를 공부하기 위해 해시 관련 문제 위주로 풀었다. 해시는 저장 또는 검색 등에서 자주 활용되는 자료구조이다. 정확하게는 특정한 함수(알고리즘)를 통해서 값을 추출하고 활용하는 것 함수(알고리즘)를 어떻게 구현하는지에 따라 사용 용도와 성능이 달라진다. 이러한 해시는 더 나아가서 암호, 블록체인, 메시지 인증 코드 등에서도 활용된다. 해시를 이해하기 위해서는 ..
링크 : https://www.acmicpc.net/problem/25314 25314번: 코딩은 체육과목 입니다 오늘은 혜아의 면접 날이다. 면접 준비를 열심히 해서 앞선 질문들을 잘 대답한 혜아는 이제 마지막으로 칠판에 직접 코딩하는 문제를 받았다. 혜아가 받은 문제는 두 수를 더하는 문제였다. C++ www.acmicpc.net 문제 풀이 문제는 간단하지만 백준 js를 단계적으로 풀어보려고 작성! 사용법이 프로그래머스랑 달라서 아직 어색하다. const fs = require("fs"); //제출용 const input = require("fs").readFileSync("/dev/stdin").toString(); //vscode 용 + 예제.txt 에 input data를 넣는다. //const..