전체 글

전체 글

    파이썬(Python) 알고리즘 문제풀이 두 개 뽑아서 더하기 [프로그래머스 / 정렬]

    from itertools import combinations def solution(numbers): # 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아라 answer = [] for unit in list(combinations(numbers, 2)): x, y = unit sum = x + y if sum not in answer: answer.append(sum) answer = sorted(answer) return answer print(solution([2,1,3,4,1])) print(solution([5,0,2,7])) 문제 설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해..

    2023.06.05 (월요일) ~ 2023.06.10 (토요일) 주간 및 일일 학습계획

    주간목표 2023.06.05 ~ 2023.06.10 컨디션 관리 주 3회 이상 운동 월, 수, 목 미라클 모닝 인증 문제 풀이 전략 정렬 복습 완료 및 이분 탐색부터 진도 빼기 호돌맨 요절복통 개발쇼 강의 구매 및 학습 일일목표 2023.06.05 (월요일) 문제 풀이 전략 정렬 복습 마무리 두 개 뽑아서 더하기 (Level 1) H-Index (Level 2) 문자열 내 맘대로 정렬하기 (Level 1) 가장 큰 수 (Level 2) 문제 풀이 전략 이진 탐색 학습 시작 일일목표 2023.06.08 (목요일) 문제 풀이 전략 이분탐색 학습 입국 심사 (Level 3) 순위 검색 (Level 2) 호돌맨 요절복통 개발쇼 학습 일일목표 2023.06.09 (금요일) 호돌맨 요절복통 개발쇼 학습 일일목표 2..

    파이썬(Python) 알고리즘 문제풀이 수식 최대화 [프로그래머스 / 완전탐색]

    문제 설명 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 같은 방식으로 결정하려고 합니다. 해커톤 대회에 참가하는 모든 참가자들에게는 숫자들과 3가지의 연산문자(+, -, ) 만으로 이루어진 연산 수식이 전달되며, 참가자의 미션은 전달받은 수식에 포함된 연산자의 우선순위를 자유롭게 재정의하여 만들 수 있는 가장 큰 숫자를 제출하는 것입니다. 단, 연산자의 우선순위를 새로 정의할 때, 같은 순위의 연산자는 없어야 합니다. 즉, + > - > * 또는 - > * > + 등과 같이 연산자 우선순위를 정의할 수 있으나 +, > - 또는 * > +,-처럼 2개 이상의 연산자가 ..

    파이썬(Python) 알고리즘 문제풀이 불량 사용자 [프로그래머스 / 완전탐색]

    문제 설명 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 사용자라는 이름으로 목록을 만들어서 당첨 처리 시 제외하도록 이벤트 당첨자 담당자인 "프로도" 에게 전달하려고 합니다. 이 때 개인정보 보호을 위해 사용자 아이디 중 일부 문자를 '' 문자로 가려서 전달했습니다. 가리고자 하는 문자 하나에 '' 문자 하나를 사용하였고 아이디 당 최소 하나 이상의 '*' 문자를 사용하였습니다. "무지"와 "프로도"는 불량 사용자 목록에 매핑된 응모자 아이디를 제재 아이디 라고 부르기로 하였습니다. 예를 들어, 이벤트에 응모한 전체 사용자 아이디 목록이 다음과 같다면 응모자 아이디 f..

    파이썬(Python) 알고리즘 문제풀이 소수 찾기 [프로그래머스 / 완전탐색]

    문제 설명 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 이루어져 있습니다. "013"은 0, 1, 3 숫자가 적힌 종이 조각이 흩어져있다는 의미입니다. 입출력 예시 numbers return "17" 3 "011" 2 입출력 예 설명 예제 1) [1, 7]으로는 소수 [7, 17, 71]를 만들 수 있습니다. 예제 2) [0, 1, 1]으로는 소수 [11,..

    파이썬(Python) 알고리즘 문제풀이 카펫 [프로그래머스 / 완전탐색]

    문제 설명 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만, 전체 카펫의 크기는 기억하지 못했습니다. Leo가 본 카펫에서 갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개변수로 주어질 때 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수입니다. 노란색 격자의 수 yellow는 1 이상 2,000,000 이하인 자연수입니다. 카펫의 가로 길이는 세로 길이와 같거나, 세로 길이보다 ..

    파이썬(Python) 알고리즘 문제풀이 모의고사 [프로그래머스 / 완전탐색]

    문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를 작..

    파이썬(Python) 알고리즘 문제풀이 호텔방 배정 [프로그래머스 / 문자열]

    문제 설명 [본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.] "스노우타운"에서 호텔을 운영하고 있는 "스카피"는 호텔에 투숙하려는 고객들에게 방을 배정하려 합니다. 호텔에는 방이 총 k개 있으며, 각각의 방은 1번부터 k번까지 번호로 구분하고 있습니다. 처음에는 모든 방이 비어 있으며 "스카피"는 다음과 같은 규칙에 따라 고객에게 방을 배정하려고 합니다. 한 번에 한 명씩 신청한 순서대로 방을 배정합니다. 고객은 투숙하기 원하는 방 번호를 제출합니다. 고객이 원하는 방이 비어 있다면 즉시 배정합니다. 고객이 원하는 방이 이미 배정되어 있으면 원하는 방보다 번호가 크면서 비어있는 방 중 가장 번호가 작은 방을 배정합니다. 예를 들어, 방이 총 10개이고, 고객들이 원하는 방 번호가 순서대..

    파이썬(Python) 알고리즘 문제풀이 모음사전 [프로그래머스 / 문자열]

    문제 설명 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니다. 단어 하나 word가 매개변수로 주어질 때, 이 단어가 사전에서 몇 번째 단어인지 return 하도록 solution 함수를 완성해주세요. 제한사항 word의 길이는 1 이상 5 이하입니다. word는 알파벳 대문자 'A', 'E', 'I', 'O', 'U'로만 이루어져 있습니다. 입출력 예시 s result "AAAAE" 6 "AAAE" 10 "I" 1563 "EIO" 1189 입출력 예 설명 입출력 예 #1 사전에서 첫 번째 단어는 "A"이고, 그다음은 "A..

    2023.05.29 (월요일) ~ 2023.06.02 (금요일) 주간 및 일일 학습계획

    주간목표 2023.05.29 ~ 2023.06.04 컨디션 관리 주 3회 이상 운동 월, 수, 목 미라클 모닝 인증 문제 풀이 전략 재귀, 완전탐색 복습 완료 호돌맨 요절복통 개발쇼 강의 구매 및 학습 일일목표 2023.05.29 (월요일) 문제 풀이 전략 재귀 복습 콜라츠 추측 (Level 1) 하노이의 탑 (Level 3) 호돌맨 요절복통 개발쇼 강의 구매 및 학습 일일목표 2023.05.30 (화요일) 문제 풀이 전략 재귀 복습 모음 사전 (Level 2) 호텔 방 배정 (Level 4) 호돌맨 요절복통 개발쇼 강의 학습 일일목표 2023.05.31 (수요일) 문제 풀이 전략 완전탐색 복습 모의 고사 (Level 1) 카펫 (Level 2) 호돌맨 요절복통 개발쇼 강의 학습 일일목표 2023.06...