[Python] 오픈채팅방
·
study/Programmers
문제링크 및 설명https://school.programmers.co.kr/learn/courses/30/lessons/42888 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 접근법유저 아이디를 딕셔너리의 키로, 유저의 이름을 딕셔너리의 값으로 저장하였고, 마지막에 for문을 돌며 가장 최근의 값을 출력하도록 하였다.Collections의 Defaultdict를 활용하여 딕셔너리의 값을 추가 및 업데이트 하였다.from collections import defaultdict def solution(record): id_dict = defaultdict..
[Python] 무인도 여행
·
study/Programmers
문제링크 및 설명https://school.programmers.co.kr/learn/courses/30/lessons/154540 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 접근법DFS를 활용하여 이어진 섬들끼리의 총 합을 answer에 append하는 방식으로 구현하였다.DFS에서 0이 리턴되는 경우는 방문할 수 없는 섬이라 answer에 append하지 않는다.런타임 에러가 발생하여 sys.setrecursionlimit을 활용하여 재귀 최대 깊이를 설정하였다. import syssys.setrecursionlimit(int(1e9))mx = [1,..
[Python] 연속된 부분 수열의 합
·
study/Programmers
문제링크 및 설명https://school.programmers.co.kr/learn/courses/30/lessons/178870 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 접근법투포인터를 활용하여 합이 k보다 작을때까지의 연속된 부분 수열의 합을 찾는다.만약 누적합이 k와 같다면 answer 리스트에 값을 더한다.이 때 합이 같은 수열이 여러 개라면 길이가 짧은 수열을 리턴해야하기 때문에 [시작 idx, 끝 idx, 부분 수열의 길이]를 리스트에 더한다.answer 리스트를 길이를 나타내는 x[2] 기준으로 정렬한 후, 첫번째 원소의 [시작 idx,끝..
[Python] 정수 삼각형
·
study/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/43105 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제설명접근법자기 자신의 값을 현재까지의 가장 큰 숫자로 값을 변경한다.그러기 위해선 자기 자신의 왼쪽 위 대각선과 오른쪽 위 대각선의 값 중 큰 값을 골라 현재 값에 더하면 된다. 다만 0번째 열인 경우 오른쪽 위 대각선의 값만 받을 수 있으며, 마지막 열인경우 왼쪽 위 대각선의 값만 받을 수 있기 때문에 조건문으로 처리해준다.마지막 행의 값 중 가장 큰 값을 리턴하면 된다. def solution(..