프로그래머스 21

[프로그래머스/JavaScript] 문자열 내림차순으로 배치하기

https://school.programmers.co.kr/learn/courses/30/lessons/12917 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1) 풀이 오랜만에 프로그래머스를 풀다보니 내 실력을 가늠할 수 있는 것 같다 😥 앞으로는 분발해서 자료 안 찾아보고도 할 수 있도록 연습해야지.. 해당 문제는 문자열 하나를 가지고 문자 하나하나를 내림차순으로 정리하는 문제였다! 대문자를 소문자보다 작다고 표현하는 걸 봐서 아스키코드 순이니까 그냥 냅다 비교하면 간단할 거라 생각해서 반복문 두개로 돌리고 삽질하다가.. 문득 문자열은 sort 할 ..

[프로그래머스/c++] 올바른 괄호

https://programmers.co.kr/learn/courses/30/lessons/12909 코딩테스트 연습 - 올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 programmers.co.kr 1) 풀이 해당 문제의 풀이과정은 따로 적어두지 않을 예정이다! 자기 전에 오늘 공부 안 했다는 죄책감때문에 가볍게 푼 문제라 백준에서 푼 문제와 풀이 방식이 똑같다! 풀이를 적어놓은 그 글을 대신 첨부하겠다. 2021.03.06 - [알고리즘 | 자료구조/백준] - [백준/c++] 9012 - 괄호 2) 최종 소스코..

[프로그래머스/c++] 기능개발

https://programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 1) 풀이 작업의 진행상황(progresses)과 진행속도(speeds)가 들어있는 벡터가 각각 하나씩 주어진다. 벡터 사이즈와 작업의 인덱스(ex. progresses idex 0에 들어있는 작업=speeds idex 0에 들어있는 작업) 가 동일하므로, 각각의 벡터에 동일한 인덱스의 값을 확인하고 작업을 완료할 때까지의 날짜를 구하면 된다. 우선, 1..

[프로그래머스/c++] 프린터

https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 이래저래.. 정신없어서 블로그에 글을 못 썼다! 자취방도 드디어 구하고 키키 다시 열심히 공부해야지 1) 풀이 우선, 가장 앞에 있는 문서를 빼고 중요도를 확인한 뒤 마지막에 넣거나 인쇄하는 과정이 필요하므로 큐(queue)를 이용해서 푸는 문제임을 알 수 있다. priorities에 있는 문서를 큐에 모두 저장하고 빼고 넣는 과정을 진행하면 된다. 하지만 한 가지..

[프로그래머스/c++] 짝지어 제거하기

https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 1) 풀이 처음에는 단순히 '문자열' 문제라고 생각했다... 주어지는 것도 string 이었고 adjacent_find함수를 통해서 짝지어지는 문자의 iterator를 받아서 erase에 넣고 지워주는 코드를 짰다.. 아래가 제일 처음 내가 짰던 코드다. #include #include #include using namespace std; int s..

[프로그래머스/c++] 폰켓몬

https://programmers.co.kr/learn/courses/30/lessons/1845?language=cpp 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 1) 풀이 폰켓몬 N/2 마리를 최대한 많은 종류로 선택하는 방법은, 주어지는 폰켓몬 배열에서 중복값을 제거하고 고르는 방법이다. 중복값을 제거하는 방법은 unique 함수를 이용하면 된다. 해당 함수로 중복값을 제거하는 방법은 아래 글에 정리해놓았다! 2021.06.16 - [언어/c++] - [c++] vector 중복원소 제거(so..

[프로그래머스/c++] 완주하지 못한 선수

https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 1) 풀이 요즘 프로그래머스를 열심히 푸는 중인데, 이것도 이 형식에 적응하다보니 좀 풀만한 것 같기도 하고... 그치만 백준을 너무 오래도록 풀어서 아직까지 어색한 감은 있다.. 아무튼, 위 문제는 단순히 생각하면 오히려 쉽게 풀리는 문제이다. 처음에는 참여자 배열의 값들을 반복문으로 하나씩 find함수에 넣고, 해당 값이 completio..

[프로그래머스/c++] 게임 맵 최단거리

https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr 1) 풀이 요즘 BFS, DFS 문제를 백준에서 집중적으로 다시 풀어보다가, 프로그래머스에서는 한 번도 이 알고리즘문제를 풀어본 적이 없어서 풀어보았다! 사실 기존의 BFS 풀이랑 별반 다를 건 없는데, 백준과 푸는 방식? 제출 방식? 뭐라고 해야 하나. 아무튼.. 그게 달라서 적응이 좀 필요할 것 같다 😂 ..

[프로그래머스/c++] 체육복

https://programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 이 문제를 풀고 나서 다른 분의 풀이를 보고 나서 아..! 싶었다. 알고리즘을 몇 개 아는 지금 이 시점에서, 알고리즘 연습 문제는 어떻게든 풀 수 있다.. 그리고 내가 알고 있는 방법 내에서 충분히 효율적으로 풀 수 있음에도 지금의 나는 그냥 무작정 어떻게든 풀어내려는 게 습관화 되어있는 것 같다😥 앞으로는 효율을 생각해봐야지... 1) 풀이 별거 아닌 문제인데..

[프로그래머스/JavaScript] 3진법 뒤집기

programmers.co.kr/learn/courses/30/lessons/68935?language=javascript 코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr 1) 풀이 프로그래머스에서 문제 푸는 건 아직 서툴다 😂 그래도 하나씩 모이면 익숙해지겠지. 오늘은 간단한 진법 변환에 대한 문제를 자바스크립트로 풀었다. 진법변환을 위해 자바스크립트의 toString, parseInt 함수를 이용하였는데, 해당 함수들에 대한 내용을 적은 자료가 이미 내 블로그..

728x90