알고리즘
[BOJ(백준)] 14501 퇴사 - 파이썬(Python3)
문제 링크 https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 문제 설명 상담원으로 일하고 있는 백준이는 퇴사를 하려고 한다. 오늘부터 N+1일째 되는 날 퇴사를 하기 위해서, 남은 N일 동안 최대한 많은 상담을 하려고 한다. 백준이는 비서에게 최대한 많은 상담을 잡으라고 부탁을 했고, 비서는 하루에 하나씩 서로 다른 사람의 상담을 잡아놓았다. 각각의 상담은 상담을 완료하는데 걸리는 기간 Ti와 상담을 했을 때 받을 수 있는 금액 Pi로 이루어져 있다. N = 7인 경우에 다음과 같은 상담 일정표를 보자. 1일2일3일4일5일6일7일TiPi 3 5 1 1 2 4 2 10 20 10 20..
[프로그래머스] 캐시 - 파이썬(Python3)
문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/17680 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 지도개발팀에서 근무하는 제이지는 지도에서 도시 이름을 검색하면 해당 도시와 관련된 맛집 게시물들을 데이터베이스에서 읽어 보여주는 서비스를 개발하고 있다. 이 프로그램의 테스팅 업무를 담당하고 있는 어피치는 서비스를 오픈하기 전 각 로직에 대한 성능 측정을 수행하였는데, 제이지가 작성한 부분 중 데이터베이스에서 게시물을 가져오는 부분의 실행시간이 너무 오래 걸린다는 것을 알게 ..
[프로그래머스] n^2 배열 자르기 - 파이썬(Python3)
문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/87390 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 정수 n, left, right가 주어집니다. 다음 과정을 거쳐서 1차원 배열을 만들고자 합니다. 1. n행 n열 크기의 비어있는 2차원 배열을 만듭니다. 2. i = 1, 2, 3, ..., n에 대해서, 다음 과정을 반복합니다. - 1행 1열부터 i행 i열까지의 영역 내의 모든 빈칸을 숫자 i로 채웁니다. 3. 1행, 2행, ..., n행을 잘라내어 모두 이어붙인 새로운 ..
[프로그래머스] 단어 변환 - 파이썬(Python3)
https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 두 단어 begin, target 그리고 단어의 집합 words가 있다. 규칙을 지켜 begin -> target 의 가장 짧은 변환 과정을 찾는 문제이다. 규칙 1. 한 번에 한개의 알파벳만 바꿀 수 있다. 규칙 2. words에 있는 단어로만 변환할 수 있다. 제일 먼저 words에 target이 존재하는 지를 확인(규칙2)을 해야한다고 생각했다. 그 후에 한 개의 알파벳만 다른 단어로 변환(..