알고리즘/programmers 265

[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에 넣어지지 않은 단어들을 넣어줍니다...

[Programmers 코딩테스트 고득점 Kit] 네트워크

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr 간단한 DFS 문제였습니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 코딩테스트 고득점 Kit] 타겟 넘버

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/43165 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr 간단한 DFS 문제였습니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

[Programmers 위클리 챌린지 6주차] 복서 정렬하기

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/85002 코딩테스트 연습 - 6주차 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr 상당히 쉬운 문제였습니다. 문제에서 주어진 대로 정렬을 진행하면 되는 문제였으며 코드를 보시면 쉽게 이해가 될 것으로 판단됩니다. 개발환경:Visual Studio 2017 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~