프로그래머스 298

[Programmers 코딩테스트 고득점 Kit] 주식가격

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 벡터 크기가 최대 100,000이기 때문에 단순 O(N^2)으로는 풀 수 없는 문제였습니다. 알고리즘은 아래와 같습니다. 1. prices 벡터를 순회하며 주식 가격과 인덱스를 큐에 넣어줍니다. 2. 큐에 넣어주기 전에 기존 큐에 들어가 있는 주식 가격들과 현재 보고 있는 주식 가격을 비교한 뒤 현재 주..

[Programmers 코딩테스트 고득점 Kit] 다리를 지나는 트럭

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 programmers.co.kr deque을 이용하면 쉽게 풀 수 있는 문제였습니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 코딩테스트 고득점 Kit] 프린터

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 큐를 적절히 이용하면 쉽게 풀 수 있는 문제였습니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 위클리 챌린지 7주차] 입실 퇴실

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/86048 코딩테스트 연습 - 7주차 사회적 거리두기를 위해 회의실에 출입할 때 명부에 이름을 적어야 합니다. 입실과 퇴실이 동시에 이뤄지는 경우는 없으며, 입실 시각과 퇴실 시각은 따로 기록하지 않습니다. 오늘 회의실에는 programmers.co.kr 시뮬레이션 문제였습니다. 알고리즘은 아래와 같습니다. 1. leave 배열을 기준으로 순회하며 현재 나갈 차례인 사람이 회의실에 들어올 때까지 사람들을 회의실에 입장시킵니다. 1.1 이 때, 회의실에 들어온 사람들끼리 필수로 만났으므로 visited map에 표시해줍니다. 2. 회의실에 나갈 차례가 된 사람들을 회의실에서 차례대로 내보냅니다. 3..

[Programmers 코딩테스트 고득점 Kit] 기능개발

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 간단한 브루트포스 문제였습니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 코딩테스트 고득점 Kit] 카펫

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42842 코딩테스트 연습 - 카펫 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 programmers.co.kr 아래의 공식만 이해하면 쉽게 풀 수 있는 문제였습니다. 가로 * 세로 = (갈색 + 노란색) (가로 - 2) * (세로 - 2) = 노란색 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 코딩테스트 고득점 Kit] 소수 찾기

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 programmers.co.kr 에라토스테네스의 체와 완전탐색을 이용하여 푸는 문제였습니다. 알고리즘은 아래와 같습니다. 1. 에라토스테네스의 체를 이용하여 범위 내의 소수를 찾아줍니다. 2. 주어진 numbers로 만들 수 있는 모든 숫자를 찾고 set에 넣어줍니다. (set 자료구조를 이용한 이유는 중복을 방지하기 위해) 3. set 내에 있는 소수의 개수를..

[Programmers 코딩테스트 고득점 Kit] 모의고사

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 간단한 구현 문제였습니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 코딩테스트 고득점 Kit] 여행경로

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/43164 코딩테스트 연습 - 여행경로 [["ICN", "SFO"], ["ICN", "ATL"], ["SFO", "ATL"], ["ATL", "ICN"], ["ATL","SFO"]] ["ICN", "ATL", "ICN", "SFO", "ATL", "SFO"] programmers.co.kr 주의: 주어진 tickets 벡터 내 같은 항공권이 여러개 들어갈 수 있습니다. 알고리즘은 아래와 같습니다. 1. 주어진 조건 중에 '만일 가능한 경로가 2개 이상일 경우 알파벳 순서가 앞서는 경로를 return 합니다.' 조건이 있으므로 우선 tickets 벡터를 전처리하여 출발지를 key로 갖고 오름차순으로..

[Programmers 코딩테스트 고득점 Kit] 단어 변환

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수 programmers.co.kr 우선순위 큐를 활용한 BFS 문제였습니다. 알고리즘은 아래와 같습니다. 1. 변환된 횟수가 낮을수록 우선순위가 높은 우선순위 큐에 {0, begin}을 넣어줍니다. 2. BFS를 진행하며 words 벡터 내 반복문을 돌리며 현재 단어와 한 글자 차이이고 기존에 pq에 넣어지지 않은 단어들을 넣어줍니다...