본문 바로가기

알고리즘43

Programmers 프로그래머스 코딩테스트 연습 - 자릿수 더하기 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 자릿수 더하기 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 자릿수 더하기 문제를 JavaScript로 해결해 보도록 하겠습니다. 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출력 예 n answer 123 6 987 24 입출력 예 설명 입출력 예 #1 문제의 예시와 같습니다. 입출력 예 #2 9 + 8 + 7 = 24이므로 24를 return 하면 됩니다. 작성한 답 solutio.. 2020. 8. 22.
Programmers 프로그래머스 코딩테스트 연습 - 정수 제곱근 판별 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 정수 제곱근 판별 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 정수 제곱근 판별 문제를 JavaScript로 해결해 보도록 하겠습니다. 문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항 n은 1이상, 50000000000000 이하인 양의 정수입니다. 입출력 예 n return 121 144 3 -1 입출력 예 설명 입출력 예#1 121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합.. 2020. 8. 21.
Programmers 프로그래머스 코딩테스트 연습 - 이상한 문자 만들기 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 이상한 문자 만들기 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 이상한 문자 만들기 문제를 JavaScript로 해결해 보도록 하겠습니다. 문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예 s return "try.. 2020. 8. 20.
Programmers 프로그래머스 코딩테스트 연습 - 서울에서 김서방 찾기 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 서울에서 김서방 찾기 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 서울에서 김서방 찾기 문제를 JavaScript로 해결해 보도록 하겠습니다. 문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. 입출력 예 .. 2020. 8. 19.
Programmers 프로그래머스 코딩테스트 연습 - 두 정수 사이의 합 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 두 정수 사이의 합 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 두 정수 사이의 합 문제를 JavaScript로 해결해 보도록 하겠습니다. 문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 입출력 예 a b return 3 5 12 3 3 3 5.. 2020. 8. 17.
프로그래머스 코딩테스트 연습 Level 1 - 소수 찾기 (JavaScript) 프로그래머스 코딩테스트 연습 Level 1 - 소수 찾기 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, [소수 찾기] 문제를 JavaScript로 해결 해보도록 하겠습니다. 문제 문제 설명 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 1000000이하의 자연수입니다. 입출력 예 n result 10 4 5 3 입출력 예 설명 입출력 예 #1 1부터 10 사이의 소수는 [2,3,5,7] 4개가 존재하므로 4를 반환 입출력 예 #2 1부터 5 사이의 소수는 [2,3,5] 3개가 존재하므로 3.. 2020. 8. 14.
Programmers 프로그래머스 코딩테스트 연습 - 문자열 내 p와 y의 개수 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 문자열 내 p와 y의 개수 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 문자열 내 p와 y의 개수 문제를 JavaScript로 해결 해보도록 하겠습니다. 문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다. 제한사항 문자열 .. 2020. 8. 12.
Programmers 프로그래머스 코딩테스트 연습 - 같은 숫자는 싫어 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 같은 숫자는 싫어 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 같은 숫자는 싫어 문제를 JavaScript로 해결 해보도록 하겠습니다. 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 retu.. 2020. 8. 11.
Programmers 프로그래머스 코딩테스트 연습 - 완주하지 못한 선수 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 완주하지 못한 선수 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 완주하지 못한 선수 문제를 JavaScript로 해결 해보도록 하겠습니다. 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 par.. 2020. 8. 10.
Programmers 프로그래머스 코딩테스트 연습 - 최댓값 구하기 (MYSQL) Programmers 프로그래머스 코딩테스트 연습 - 최댓값 구하기 (MYSQL) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 최댓값 구하기 문제를 MYSQL로 해결 해보도록 하겠습니다. 문제 설명 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE.. 2020. 8. 9.
Programmers 프로그래머스 코딩테스트 연습 - 콜라츠 추측 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 콜라츠 추측 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 콜라츠 추측 문제를 JavaScript로 풀어보도록 하겠습니다. 문제 설명 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 입력된 수가 6이라면 6→3→10→5→16→8→4→2→1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 .. 2020. 8. 8.
Programmers 프로그래머스 코딩테스트 연습 - 하샤드 수 (JavaScript) Programmers 프로그래머스 코딩테스트 연습 - 하샤드 수 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중, 하샤드 수 문제를 JavaScript로 풀어보도록 하겠습니다. 문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 제한 조건 x는 1 이상, 10000 이하인 정수입니다. 입출력 예 arr return 10 true 12 true 11 false 13 false 입출력 예 설명 입출력 예 #1 10의 모든 자릿.. 2020. 8. 7.