알고리즘

    프로그래머스 - 도넛과 막대 그래프

    프로그래머스 - 도넛과 막대 그래프

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/258711 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 분석 도넛 모양 그래프, 막대 모양 그래프, 8자 모양 그래프들이 있습니다. 이 그래프들은 1개 이상의 정점과 정점들을 연결하는 단방향 간선으로 이루어져 있습니다. ● 크기가 n인 도넛 모양은 n개의 정점과 n개의 간선이 있습니다. 한 정점에서 이용한 적 없는 간선을 계속 따라가면 나머지 n-1 개의 정점을 1번 씩 방문한 뒤 원래 출발했던 정점으로 돌아옵니다. → 도넛 모양 그래..

    프로그래머스 - PCCP 기출문제 2(250136)

    프로그래머스 - PCCP 기출문제 2(250136)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/250136 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 n x m 크기의 땅에 석유가 발견되었습니다. 석유는 여러 덩어리로 나누어 묻혀있으며 가장 효율적인 시추를 위해 시추관을 수직으로 단 하나만 뚫을 때 가장 많은 석유를 뽑을 수 있는 위치를 찾으려고 합니다. 시추관은 열 하나를 관통하는 형태이며 열과 열 사이 뚫을 수 없습니다. 다음과 같은 땅에서는 8, 7, 2 크기의 석유 덩어리가 묻혀있으며 시추를 설치한 열은 석유 덩어리..

    프로그래머스 - 여행경로(43164)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/43164 문제 설명 주어진 항공권을 모두 이용하여 여행결로를 짜려고 합니다. 항상 "ICN" 공항에서 출발합니다. 티켓이 담긴 2차원 배열 tickets가 주어질 때, 방문하는 공항 경로를 배열에 담아 return 하시오. 제한조건 * 모든 공항은 알파벳 대문자 3글자로 이루어집니다. * 주어진 공항 수는 3개 이상, 10,000개 이하입니다. * ticket [a, b]는 a공항에서 b공항으로 가는 항공권입니다. * 주어진 항공권을 모두 사용해야합니다. * 가능한 경로가 2개 이상일 경우 알파벳 순서가 앞서는 경로를 우선시합니다. * 모든 도시를 방문할 수 없는 경우는 주어지지 않습니다. ..

    프로그래머스 - 표 병합(150366)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/150366 문제 설명 당신은 표 편집 프로그램을 작성하고 있습니다. 표는 50*50 크기이며, 초기에 모든 셀은 비어 있습니다. 위에서 r번째, 왼쪽에서 c 번째 위치를 (r,c)라 표현할 때, 명령어들을 구현하려고 합니다. 명령어를 구현 한 후, 실행할 명령어들이 담긴 1차원 문자열 배열 commands가 주어질 때, commands 명령어를 순서대로 실행하고, PRINT 명령어에 대한 실행 결과를 순서대로 1차원 문자열 배열에 담아 return 하시오. 제한조건 1

    프로그래머스 - 합승 택시 요금(72413)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/72413 문제 설명 A와 B는 택시를 타고 귀가하려고 합니다. 이때 A와 B는 가능한 택시요금이 적게나오는 루트로 합승하려고 합니다. 택시를 타고 갈 수 있는 n개의 지점 중 택시를 타는 s지점, A와 B의 집인 a, b지점, 각 지점간의 택시요금이 주어졌을 때, 최소 택시요금을 구하시오. 제한조건 * s, a, b 지점은 겹치지 않습니다. 또한 s지점에서 반드시 a, b 지점으로 갈 수 있는 경로만 주어집니다. * n

    프로그래머스 - 상담원 인원(214288)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/214288 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 H회사 채용 설명회에서 k개의 부서에 대해 n명의 멘토가 상담을 할 예정입니다. 상담 신청서 뭉치 reqs에는 [상담 시작 시간, 상담 소요 시간, 상담 부서] 3가지가 기입된 신청서들이 있습니다. 다음과 같은 조건하에 각 신청자가 최대한 기다리지 않도록 부서당 멘토 비율을 조정해야 합니다. 상담을 원하는 참가자가 상담 요청을 했을 때, 참가자의 상담 유형을 담당하는 멘토 중..

    프로그래머스 - 보석 쇼핑(67258)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/67258 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 진열장에 보석명 순서대로 들어있습니다. 본인은 배열의 특정 범위의 보석을 모두 구매하되 아래 목적을 달성하고 싶습니다. 진열된 모든 종류의 보석을 적어도 1개 이상 포함하는 가장 짧은 구간을 찾아서 구매 예를들어 4종류의 보석(RUBY, DIA, EMERALD, SAPPHIRE)이 8개가 진열된 진열대입니다. ["DIA", "RUBY", "RUBY", "DIA", "DIA", ..

    프로그래머스 - 수식 최대화(67257)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/67257 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 오직 숫자와 +, -, * 연산자로 이루어진 문자열 수식이 다음과 같이 제공됩니다. "100-200*300-500+20" 이 문자열 수식에서 연산자 우선순위를 정의하여 해당 수식에 결과의 절대값이 가장 큰 값이 무엇인지 구해야합니다. 예시로 "100-200*300-500+20" 수식은 * > + > - 로 연산자 우선순위를 정한다면 -60,420으로 절대값 60420으로 가장 ..