본문 바로가기

프로그래머스107

[PCCP 기출문제] 1번 / 동영상 재생기 - Pyton, f_string https://school.programmers.co.kr/learn/courses/30/lessons/340213 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  풀이 - 나의 생각분 초로 되어있는 양식을 초로 변환해서 처리 후 마지막에 다시 분 초로 바꿔 줬습니다. 시작하는 위치가 opening 구간일 경우가 있기 때문에 한번 검사해주고 그 다음 부터는 이동 후 검사 해주면 됩니다. 초를 분초 형식으로 바꾸는 방식은 이번에는 f_string을 사용했는데  여러 방법이 있습니다.f_string(최신 방식) f"{pos // 60:02}:{pos % 60:02}" :02 = 두 자리 숫자로 포매팅하며,.. 2024. 11. 25.
달리기 경주 - Python, 딕셔너리 https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  풀이 - 나의 생각딕셔너리를 통해 플레이어의 인덱스를 저장해두고 불린 플레이어와 앞의 플레이어를 딕셔너리에서 찾아 바꿔줍니다. 가장 당황스러운 부분은 players[now_index-1], players[now_index] = players[now_index], players[now_index-1] 이게 된다고????? 코드 def solution(players, callings): index_player = {player:i for .. 2024. 11. 25.
2023 KAKAO BLIND RECRUITMENT > 이모티콘 할인행사 - Python, product, 조합 https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 - 나의 생각처음에는 조합으로 해결하려고 했다. 알아보니 파이썬에서는  itertools.product 를 통해 조합을 쉽게 해결할 수 있었다. itertools.product를 사용해서 이모티콘의 가격을 10, 20, 30, 40퍼센트 할인하는 경우의 수를 구하고 이를 돌려가면서 조건에 맞는지 체크한다. 근데 그때마다 할인율에 맞는 금액을 구하는 건 비효율적이라고 생각했다. 그래서 이모티콘의 가격을 할인율에 맞게 구한 후 계산할때는 뽑.. 2024. 11. 23.
2023 KAKAO BLIND RECRUITMENT > 개인정보 수집 유효기간 - Python, 구현, map https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   풀이 - 나의 생각month에 대해 계산 후 year, day의 부가적인 계산을 하냐 year, month, day를 모두 day화 하여 계산을 하냐 편한 방식으로 진행하면 됩니다. 코드 def solution(today, terms, privacies): answer = [] dict_terms = {term.split()[0]: int(term.split()[1]) for term in terms} today_int =.. 2024. 11. 22.
네트워크 - Python, DFS, BFS, Union_find https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 - 나의 생각이게 왜 Lv.3일까?   코드def solution(n, computers): def dfs(node): visited[node] = True for neighbor, connected in enumerate(computers[node]): if connected and not visited[neighbor]: dfs(neighbor) visi.. 2024. 11. 21.
여행 경로 - Python, dfs, 히에로홀드 경로(Eulerian Path) https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   풀이 - 나의 생각point 1. 출발지별 도착지를 저장할 때 알파벳을 내림차순으로 정렬 ==> 그래야 pop할때 알파벳 순으로 뽑아낼 수 있음 point 2. 기록한 여행 순서를 역순으로 반환 이런 기록 문제에 자주 쓰이는 방식 DFS 탐색 과정DFS는 재귀적으로 출발지에서 가능한 도착지로 이동하며 경로를 탐색합니다. 1. 가능한 경로가 있으면 계속 깊이 들어갑니다.2. 더 이상 이동할 경로가 없으면 "후퇴"합니다. 후퇴 시, 탐색이 완료.. 2024. 11. 20.