본문 바로가기
728x90

파이썬170

[PG/Python] 기능개발 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 📌 문제 접근 방법 먼저 progresses와 speeds를 queue로 만들어줬다. progresses가 빌 때까지 작업과 배포를 반복한다. 작업은 progresses의 0번째 작업과 speeds의 0번째 속도를 더해서 progresses의 마지막에 다시 push해줬다. 배포는 progresses를 순회하며 앞에서부터 작업량이 100이 넘은 작.. 2021. 12. 9.
[BOJ/Python] 2096. 내려가기 📌 문제 https://www.acmicpc.net/problem/2096 2096번: 내려가기 첫째 줄에 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 숫자가 세 개씩 주어진다. 숫자는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 중의 하나가 된다. www.acmicpc.net 📌 문제 접근 방법 처음엔 dfs를 사용해서 최소값, 최대값을 갱신시켰는데 숫자가 많아질수록 모든 숫자를 저장하는 자체에서 메모리 초과가 발생하는 것 같았다. 따라서 입력 숫자를 저장하지 않고 입력받자마자 바로 사용할 수 있도록 dp를 사용해서 구현했다. 아래줄의 입장에서 0번째 숫자는 윗줄의 0, 1번째 숫자를 더할 수 있고, 1번째 숫자는 윗줄의 모든 숫자, 2번째 숫자는 윗줄의 1, 2번째 숫자를.. 2021. 12. 8.
[PG/Python] 불량 사용자 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/64064 코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 programmers.co.kr 📌 문제 접근 방법 banned_id를 하나씩 순회하며 banned_id가 될 수 있는 후보 리스트를 able_banned에 저장했다. 후보 리스트를 하나씩 순회하며 재귀를 이용해서 불량 사용자 리스트를 만들었다. 중복을 체크해주기 위해서 sort한 후 answer에 저장했다. 불량 사용자 리스트의 경우의 수가 저장된 answer의 길이를 반환한다. 📌.. 2021. 12. 8.
[SWEA/Python] 2383. 미생물 격리 📌 문제 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 📌 문제 접근 방법 주어진 정보를 어떤 형식으로 저장하는 게 가장 쓰기 편할까? 이 고민을 제일 많이 했다. 결국은 딕셔너리를 사용해서 좌표를 key로 미생물의 개수와 방향을 value로 저장했다. 그 다음 딕셔너리를 순회하며 temp라는 딕셔너리에 key값은 이동 후 좌표, value는 이동 전 좌표를 저장했다. 다시 temp를 순회하며 value 리스트의 길이가 2 이상일 경우 한 지점에 여러 미생물이 모이는 것이므로, 미생물의 수가 가장 큰 군집을 찾아서 방향을 설정해주고 모든.. 2021. 12. 7.
728x90