프로그래머스 - 짝지어 제거하기
·
dev/Algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr1. 문제 이해연속된 같은 문자 2개를 찾아서 제거제거 후 앞뒤 문자열을 이어 붙임이 과정을 반복해서 모든 문자를 제거할 수 있으면 1, 아니면 0 2. 시행착오문제 설명 그대로 구현해 보자고 생각했다.→ 인덱스를 하나씩 증가시키면서 현재 문자와 다음 문자가 같으면 제거하고, 앞뒤 문자열을 이어 붙이는 방식!// 첫 번째 시도const isSame = s[currentIndex] === s[currentIndex+1] if (isSame) { con..
프로그래머스 - 전화번호 목록
·
dev/Algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아래와 같은 흐름으로 접근을 시작했다. 1. 긴 전화번호는 짧은 번호의 접두사가 될 수 없으므로, 번호의 길이 순으로 정렬한다. 2. 이중 for문을 돌며 i번째 전화번호와 그 이후 index의 전화번호들을 비교한다. 3. startsWith 메서드를 통해 i번 째 전화번호로 시작하는 번호가 있을 경우 false, 이외에는 true를 반환한다. function solution(phone_book)..
프로그래머스 - 폰켓몬, 최소직사각형
·
dev/Algorithm
다리를 다쳐 꼼짝없이 집에만 있다 보니... 문득 회사에 다니기 전 풀었던 알고리즘 문제가 생각나 프로그래머스에 들어갔다. (심심해서 알고리즘을 풀다니! 대학생 시절 나였으면 상상도 못 했을 텐데) 이전 풀이를 보니... 귀엽기도 하고, 답답하기도 하고. 하하. 그때 풀던 level 1 문제 중 안 푼 게 있어서, 재미 삼아 풀어보았다. 언어는 JS로! 폰켓몬 https://school.programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(num..
프로그래머스 _ 크레인 인형뽑기 게임
·
dev/Algorithm
프로그래머스 _ 크레인 인형뽑기 게임 programmers.co.kr/learn/courses/30/lessons/64061# 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 끙끙끙... 문제를 이해하는데도 한참이 걸렸다! 직접 그림도 그렸다! 아무튼 간에... 제일 처음 든 생각 → 터트려져 사라진 인형의 개수를 return 해야 하니... 우선 잡힌 인형을 담은 list를 구해야겠군! 그런데 특이했던 점! 인형이 담긴 배열인 board는 2차원 배열! 따라서 board[i][j] ← 이런 식으로 원소에 접근할 수 있다! 즉 boar..
프로그래머스 _ 내적
·
dev/Algorithm
프로그래머스 _ 내적 programmers.co.kr/learn/courses/30/lessons/70128 코딩테스트 연습 - 내적 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 programmers.co.kr 제일 먼저 든 생각 → 내적이 뭔디? 그럴 줄 알고 친절한 프로그래머스는 내적 이란 글자에 링크를 걸어뒀다! 클릭해보면... ??? 없으니만 못한 것 아닌가? 아하! 그러니까 내적은 a, b의 i번째 원소를 곱한 숫자의 합이다! a, b는 길이가 같은 list니까 rang..
프로그래머스 _ 두 개 뽑아서 더하기
·
dev/Algorithm
프로그래머스 _ 두 개 뽑아서 더하기 programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 가장 먼저 든 생각 → 짧고 쉬워 보인다! 다음으로 든 생각 → numbers[i]와 numbers[i+1]을 더해주면 끝 아닌가? 대충 이런 식으로? 하지만 코드 실행도 전에 문제점이 보인다. i는 numbers의 길이만큼 for문을 돌텐데, i가 len(numbers) 번째라면? numb..
프로그래머스 _ 실패율
·
dev/Algorithm
프로그래머스 _ 실패율 programmers.co.kr/learn/courses/30/lessons/42889 코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스 programmers.co.kr 제일 먼저 든 생각 → 문제가 무지 길다! 다음으로 든 생각 → 일단 각 스테이지의 실패율을 구해야 비교가 가능하겠다! 그래서 실패율을 구하러 떠났다. 실패율 = 스테이지에 도달했으나 클리어하지 못한 플레이어 수 / 스테이지 도달한 플레이어 수! 이를 구하기 위해서는... 우선 각 스테이지 번호를 담은 list가 있어야 한다! 스테이지의 개수가 N으로 ..
프로그래머스 _ 이상한 문자 만들기
·
dev/Algorithm
프로그래머스 _ 이상한 문자 만들기 programmers.co.kr/learn/courses/30/lessons/12930 코딩테스트 연습 - 이상한 문자 만들기 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 programmers.co.kr 가장 먼저 든 생각 ↓ 공백을 기준으로 단어 구분 - split을 드디어 쓸 때가 왔군! 대소문자 변환 - upper/lower을 써야겠군! 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야 하므로... split(" ")을 통해 공백을 기준으로 단어를 쪼개 줬다! 의도한 대로 출력이 잘 되는 모습! 다음은 이렇게 분리된 'tr..