알고리즘 & PS69 [프로그래머스] 수식 복원하기 (Lv 3) https://school.programmers.co.kr/learn/courses/30/lessons/340210 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 기본적으로 10진 -> N, N-> 10을 생각해야 합니다. 각 수식별로, 가능/불가능 여부를 모두 따져야 합니다.(아마 하나에서 10진으로 안될 경우 맞는 값을 찾을 경우 나머지를 볼 필요는 없을거라 이것의 최적화도 될거긴 합니다.)그리고,추가로 N진법의 숫자 범위를 고려해야 합니다. 숫자 범위에 맞지 않는 진법을 걸러낸 다음에,나머지 중에서 연산의 결과를 체크하는 방식으로 가능한 N진법을 다룬 다음 X가 들어간 식의 N진 계산을 진행, .. 2024. 11. 1. [프로그래머스] 디펜스 게임 (Lv 2) https://school.programmers.co.kr/learn/courses/30/lessons/142085 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 쉽게 아이디어도 보이지 않았고, 하도 heap을 안 쓰다 보니 고전한 문제.자료구조로서 heap의 역할은 최대/최소값을 빠르게 찾아주는 역할임을 잊지 말자.아이디어는 그리디이다. 만일 진행하다가, 막힐 경우 그전까지 가장 쎈 스테이지에다가 스킵을 투척해버린다.막힐 경우 바로 이를 시행하기 때문에, 던지고도 또 막힐 일은 없다.아, 적군의 합도 갱신해줘야 하는데 list 합 돌리면 늦어진다. 따라서 합은 따로 그때그때 계산해줘야 한다.힙의 최댓.. 2024. 11. 1. [프로그래머스] 인사고과 (Lv 3) https://school.programmers.co.kr/learn/courses/30/lessons/152995# 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 정렬 문제에 크게 당했다.어느 것을 오름차순으로 할지, 내림차순으로 할지. 잘 생각해야 하는 문제.이와는 별도로, 정렬을 하면서 원래 찾아야 할 놈의 위치가 애매해진다.이에 대한 처리도 고려해야 한다.아무튼, 구하는 1명만 구하면 되는 애라서 가능한 풀이이다.def solution(scores): answer = 1 inho_att, inho_comp = scores[0] inho_sum = inho_att + inho_co.. 2024. 10. 29. [프로그래머스] 단어 변환 (Lv 3) https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 앞에서 푼 문제와 유사하나, 이번에는 그래프가 꽁으로 주어져 있지 않아 직접 만들어야 한다.방문 여부만 체크하면 되므로, 이번에는 굳이 거리를 다 저장할 필요는 없다.! from collections import dequedef bfs(start, end, vertex, visited): # 시작지점의 거리는 0 visited[start] = True queue = deque() queue.append((start, 0)).. 2024. 10. 29. [프로그래머스] 가장 먼 노드 (Lv 3) 2트 https://school.programmers.co.kr/learn/courses/30/lessons/49189예에전에 굉장히 삽질했던 문제 같은데,이번에는 너무 수월하게 풀어버렸다.그냥 bfs로도 풀린다. 아이디어는 간단하다(1) 양방향 그래프니까, 그냥 양방향을 다 넣어준다.(2) 방문을 하되, 거리를 저장한다. 어차피 그리디하게 생각하면 bfs가 각 노드 최단 방문거리다.즉, 이미 방문한 적이 있으면 그게 이미 최단거리라서 더 뭘 생각할 거리가 없다.!다시 말해, visited를 True/False가 아니라 -1로 해놓고 0 이상의 거리면, 방문했음으로 판정하게visited를 유연하게만 바꿔주면 되는 엄청나게 쉬운 문제다. 헤매지 말자.다익스트라 그런거 필요 없다. 이 문제. 쉽게 생각하자.# b.. 2024. 10. 28. [프로그래머스] 의상 (Lv 2) https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해시 + 간단한 수학 문제이다.문제는 4개의 의상 종류지만 N개로 확장시키는 아이디어는 수학에 있다.모든 의상 종류 중 최대 1개씩 고르는 경우의 수를 어떻게 구할까? "안 고른다" 라는 선택지를 추가하면 된다. 그리고 맨몸은 안되니 -1. 간단하다.어차피 같은 이름의 의상도 없으니 앞은 더미고, 뒤만 세주면 된다. O(n)이면 해결되는 간단한 문제.def solution(clothes): clothes_dict = {} for c .. 2024. 10. 28. 이전 1 2 3 4 5 6 7 8 ··· 12 다음