본문 바로가기

programmers5

[js] 프로그래머스 - 이진 변환 반복하기 프로그래머스 lv2 이진 변환 반복하기 0과 1로 이루어진 문자열에 대해 다음과 같은 변환 과정을 거친다. x의 모든 0을 제거한다. x를 "x의 길이를 2진법으로 표현한 문자열"로 바꾼다. 예시) x='110010101001' 1) 0을 제거 > x='111111' 2) x의 길이를 2진수로 표현 > x의 길이가 6이므로 2진수로 바꾸면 '110' > x='110' 위의 과정을 x가 1이 될 때까지 반복한다. 2진 변환 과정을 거친 횟수와 제거한 0의 개수를 배열로 출력한다. 입출력▽ s result '110010101001' [3, 8] 1) 우선 s의 1과 0을 구분하여 1은 저장하고, 0은 개수를 센다. var answer = [0, 0]; let one = ''; for (let i = 0; i.. 2022. 9. 8.
[js] 프로그래머스 - 로또의 최고 순위와 최저 순위 프로그래머스 lv1 로또 예상 순위 출력하기 순위 당첨 내용 1 6개 번호 일치 2 5개 번호 일치 3 4개 번호 일치 4 3개 번호 일치 5 2개 번호 일치 6(낙첨) 그 외 로또에 낙서를 하여 알아볼 수 없는 번호는 0으로 표기하고 보이는 번호로 추측하여 당첨 가능한 최고 순위와 최저 순위를 출력하는 문제이다. 예시) 당첨 번호 : 1, 6, 10, 19, 31, 45 구입한 로또 번호 : 0, 0, 1, 25, 31, 44 이때 알 수 없는 번호를 제외한 4개의 숫자 중에서 1과 31이 일치한 상황이므로 알 수 없는 번호가 모두 불일치할 경우 최소 [2개 번호 일치 > 5등] 알 수 없는 번호가 모두 일치할 경우 최대 [4개 번호 일치 > 3등]으로 추측할 수 있다. 따라서 출력값은 [3, 5]이다.. 2022. 9. 8.
[js] 프로그래머스 - 소수 찾기 프로그래머스 lv.1 소수 찾기 1) n이 1과 2일 때의 경우를 따로 빼주었다. 1과 2인 경우를 제외하면 규칙적인 코드 작성이 더 간편해지기 때문이다. if (n == 1) return 0; if (n == 2) return 1; //n=2일 때는 자기 자신이 소수이므로 2) n이 3 이상일 때의 경우 3부터 n까지 for문을 걸어 카운트업 해준다. (소수 합성수 구분 없이 우선 세어 줌) 이때 각 i에 대하여 2부터 i의 제곱근까지의 수로 i를 나누어보고 나누어떨어진다면 소수가 아니므로 카운트다운 해준다. 이때 i의 제곱근 대신 i / 2로 해도 가능은 하나 시간 초과가 뜬다. (더불어 효율성 테스트도 모두 실패) for (i = 3; i 2022. 8. 31.
[js] 프로그래머스 - 시저 암호 프로그래머스 연습 문제 lv1 시저 암호 문제 설명 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. 제한 조건 공백은 아무리 밀어도 공백입니다. s는 알파벳 소문자, 대문자, 공백으로만 이루어져 있습니다. s의 길이는 8000이하입니다. n은 1 이상, 25이하인 자연수입니다. 입출력 s n result 'AB' 1 'BC' 'z' 1 'a' 'a B z' 4 'e F d' 정말 단순한 문제인데 푸는데 시간을 좀 투자한.. 2022. 8. 29.
[js] 프로그래머스 - 성격 유형 검사하기 프로그래머스 2022 KAKAO TECH INTERNSHIP에 등재된 lv.1 문제를 풀어봤다. 성격 유형 검사지를 통해 RT / CF / JM / AN 의 성향을 검사해 TCMA 등의 유형으로 결정하는 검사이다. 구조적인 것은 최근 유행했던 MBTI 성격 유형과 같다. 검사지는 배열로 입력되며, 배열의 요소가 각 유형별 문항이라 할 수 있고, 피검사자의 선택 또한 배열로 입력된다. 입력의 예시는 다음과 같다. survey choices ["AN", "CF", "MJ", "RT", "NA"] [5, 3, 2, 7, 5] ["TR", "RT", "TR"] [7, 1, 3] 이 때 피검사자의 응답 선택에 따라 각 유형의 점수가 매겨지는데 예를 들어 문항 "AN"의 경우 점수는 다음과 같고, 첫 번째 케이스의.. 2022. 8. 26.