본문 바로가기

분류 전체보기365

[프로그래머스] 신규 아이디 추천 문제 링크 >> https://programmers.co.kr/learn/courses/30/lessons/72410 📋 문제 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다. 아이디의 길이는 3자 이상 15자 이하여야 합니다. 아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다. 단, 마침표(.)는 처음과 끝에 사용할 수 없으며 또.. 2021. 12. 6.
[basics] 중복 단어 제거 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 N개의 문자열이 입력되면 중복된 문자열은 제거하고 출력한다. 이때 출력하는 문자열은 원래의 입력 순서를 유지한다. 👉 입력 길이가 100을 넘지 않는 N개의 문자열이 주어진다. 각 문자열은 줄바꿈으로 구분된다. 👈 출력 첫번째 줄부터 중복이 제거된 문자열을 입력 순서대로 출력한다. 📝 풀이 입력된 문자열들을 순회하며 해당 문자열이 answer라는 배열에 없을 경우 answer에 push한다. 이후 배열 안의 요소들에 공백을 추가하여 출력한다. 위와 같은 방식이지만 이 방식은 for of 문과 if 문 대신 filter를 사용해 해당 조건에 만족하는 문자열들을 추출한 후 공백을 추가한다. 2021. 12. 6.
[basics] 중복 문자 제거 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 소문자로 이루어진 문자열이 입력되면 중복된 문자를 제거하고 출력한다. 이때, 문자열의 각 문자는 원래 문자열의 순서를 유지한다. 👉 입력 소문자로 이루어진 문자열이 입력된다. 👈 출력 중복된 문자가 제거된 문자열을 출력한다. 💡 사용된 개념 String.indexOf() String 객체에서 주어진 값과 일치하는 첫번째 인덱스를 반환한다. 일치하는 값이 없으면 -1을 반환한다. https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf String.prototype.indexOf() - JavaScript | MDN indexO.. 2021. 12. 6.
[basics] 가운데 문자 출력 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 소문자로 된 문자열이 입력되면 그 문자열의 가운데 문자를 출력한다. 단, 문자열의 길이가 짝수일 경우 가운데 2개의 문자를 출력한다. 👉 입력 길이가 100을 넘지 않는 문자열이 입력된다. 👈 출력 문자열의 가운데 문자를 출력한다. 💡 사용된 개념 String.substring() string 객체의 시작 인덱스로부터 종료 인덱스 전까지의 부분 문자열을 반환한다. str.substring(indexStart[, indexEnd]) indexStart : 반환할 문자열의 시작 인덱스 indexEnd : 옵션. 반환할 문자열의 마지막 인덱스(포함하지 않는다.) String.substr() 문자열의 특정 위치에서 시작하여 특정 문자 수만큼.. 2021. 12. 6.
[basics] 대소문자 변환 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자는 소문자로, 소문자는 대문자로 변환하여 바뀐 문자열을 출력한다. 👉 입력 길이가 100을 넘지 않는 문자열이 입력된다. 👈 출력 대소문자가 서로 바뀐 문자열을 출력한다. 📝 풀이 String.toUpperCase() / String.toLowerCase() ver. 주어진 문자열의 문자들을 순회한다. 만약 해당 문자가 대문자라면 toLowerCase()를 이용해 소문자로 변환해 빈 문자열인 answer에 추가해나간다. 조건에 걸리지 않는다면 해당 문자는 소문자이므로 toUpperCase()를 이용해 대문자로 변환해 answer에 추가한다. String.charCodeAt() /.. 2021. 12. 6.
[basics] 가장 긴 문자열 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 N개의 문자열이 입력되면 그중 가장 긴 문자열을 출력한다. 👉 입력 길이가 100을 넘지 않는 N개의 문자열이 입력된다. 이때 각 문자열의 길이는 서로 다르다. 👈 출력 가장 긴 문자열을 출력한다. 📝 풀이 주어진 문자열들을 순회하며 길이를 비교해 max의 값을 갱신해나간다. max의 값이 바뀐다면 answer에 해당 문자열을 저장한다. 2021. 12. 6.
[basics] 대문자 통일 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 대문자와 소문자가 같이 존재하는 문자열을 입력받아 모든 문자를 대문자로 바꾼 후 바뀐 문자열을 출력한다. 👉 입력 길이가 100을 넘지 않는 문자열이 입력된다. 👈 출력 대문자로 통일된 문자열을 출력한다. 💡 사용된 개념 String.fromCharCode() 인자로 주어진 유니코드(UTF-16)들로부터 문자열을 생성해 반환한다. 📝 풀이 주어진 문자열의 각 문자들을 순회하며 빈 문자열인 answer에 해당 문자의 대문자를 추가해나간다. 다른 방법으로는 String.fromCharCode()를 사용하는 방법이 있다. 주어진 문자열의 문자들을 순회한다. 만약 해당 문자가 소문자라면(해당 문자의 chatCodeAt() 값이 97 ~ 12.. 2021. 12. 5.
[basics] 대문자 찾기 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 한 개의 문자열을 입력받아 해당 문자열의 대문자 개수를 출력한다. 👉 입력 길이가 100을 넘지 않는 문자열이 입력된다. 👈 출력 해당 문자열 속 대문자의 개수를 출력한다. 💡 사용된 개념 charCodeAt() 주어진 인덱스에 대한 유니코드(UTF-16)를 나타내는 0 ~ 65535의 정수를 반환한다. str.charCodeAt(index) index : 0 이상 문자열 길이 미만의 정수. 기본값은 0. toUpperCase() 주어진 문자열을 대문자로 변환해 반환한다. 📝 풀이 for of 문을 이용해 주어진 문자열의 문자들을 순회한다. charCodeAt()을 이용해 해당 문자의 유니코드 값을 구한다. 만약 문자의 유니코드값이 .. 2021. 12. 5.
[basics] 문자 찾기 자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다. 📋 문제 한 개의 문자열과 특정 문자를 입력받아 해당 특정 문자가 입력받은 문자열에 몇 개 존재하는지를 찾고 개수를 출력한다. 👉 입력 길이가 100을 넘지 않는 문자열과 특정 문자가 주어진다. 👈 출력 특정 문자의 개수를 출력한다. 📝 풀이 인자로 문자열과 특정 문자를 받는다. for of 문을 사용해 문자열을 순회하며 특정 문자와 동일한 문자가 있으면 answer의 값을 하나씩 더해준다. 순회가 끝나면 answer를 출력한다. 다른 방법으로는 split()을 사용하는 방법이 있다. split()을 이용해 특정 문자를 기준으로 입력받은 문자열을 나눈다. 위 코드 속 주어진 문자열 COMPUTERPROGRAMMING을 특정 문자 R을 기준으로.. 2021. 12. 5.