본문 바로가기

알고리즘/프로그래머스_Python

(14)
[Programmers] 미로 탈출 명령어 (미완) https://school.programmers.co.kr/learn/courses/30/lessons/150365 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 # (x, y)에서 (r, c)로 이동해 탈출해야 함 # 미로 탈출 조건 # 격자 밖으로 못나감 # 이동거리 총 k # 같은 격자 두 번 이상 방문 가능 # 문자열이 사전 순으로 가장 빠른 경로로 탈출 # dfs (최단거리 아니라 k거리) def solution(n, m, x, y, r, c, k): answer = [] # r, l, d, u 동서남북 dx = [0, 0, 1, -1]..
[Progrmmers] 후보키 https://school.programmers.co.kr/learn/courses/30/lessons/42890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 # 후보키의 갯수 찾기 from itertools import product def solution(relation): answer = 0 relations = [1, 0] uniques = [] # 유일성 만족하는 값 찾기 for case in product(relations, repeat=len(relation[0])): case = list(case) tuples = set() fo..
[Programmers] 이중우선순위큐 https://school.programmers.co.kr/learn/courses/30/lessons/42628 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 from heapq import heapify, heappop, heappush def solution(operations): answer = [] queue = [] heapify(queue) for operation in operations: left, right = operation.split(" ") if left == 'I': # 큐에 주어진 숫자 삽입 heappush(queue, ..
[Programmers] https://school.programmers.co.kr/learn/courses/30/lessons/150369 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr https://school.programmers.co.kr/learn/courses/..
[Programmers] 주차 요금 계산 https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 삽질🔨 조건을 잘못 이해해서 오래 걸렸다 ㅠㅠ - 하룻동안 주차 시간을 합산해서 요금을 한 번에 계산해야 하는데 출차 할 때마다 요금을 구했다. 그리고 디버깅에 오랜 시간을 썼는데, 바로 fees[2] 이렇게 인덱싱을 해서 써야 하는데 fees 그냥 이렇게 써버린 것 ... 최대한 실수를 줄이고 디버깅을 빨리빨리 할 수 있어야 한다. 그리고 출차한 차량을 딕셔너리에서..
[Programmers] 메뉴 리뉴얼 https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 새로운 메뉴를 제공하기로 결정했습니다. 어떤 단품메뉴들을 조합해서 코스요리 메뉴로 구성하면 좋을 지 고민하던 "스카피"는 이전에 각 손님들이 주문할 때 가장 많이 함께 주문한 단품메뉴들을 코스요리 메뉴로 구성..
[Programmers] 두 큐 합 같게 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📍 제한 사항 1 ≤ queue1 의 길이 = queue2 의 길이 ≤ 300,000 1 ≤ queue1 의 원소, queue2 의 원소 ≤ 109 주의: 언어에 따라 합 계산 과정 중 산술 오버플로우 발생 가능성이 있으므로 long type 고려가 필요합니다. 제한사항을 보면 queue1 과 queue2의 길이가 매우 긴 것을 알 수 있다. 사실 적절한 알고리즘이 떠오르지 않아 일단 생각나는대..
[Programmers] 이모티콘 할인행사 https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 시도 # 1. 가입자 최대한 늘리기 # 2. 판매액 최대한 늘리기 # n명의 카카오톡 사용자들에게 이모티콘 m개를 할인하여 판매 (10 20 30 40 할인) # 각 사용자들 자신 기준에 따라 일정선 이상 할인하면 이모티콘 모두 구매 # 이모티콘 구매 비용 합이 일정 가격 이상 되면, 구매 모두 취소하고 플러스 가입 # 1. 가장 할인율 낮은 사람 기준으로 높은 사람까지 해보면서 (가입자수, 총..