Clover
[프로그래머스/python] 소수 만들기
Algorithm(PS) 2022. 7. 27. 17:49

문제 [프로그래머스] 소수 만들기 (Level 1) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 주어진 리스트에 대해 3개의 숫자를 중복 없이 조합할 수 있는 모든 경우의 수를 만든다. 2. 조합의 합이 소수인지 아닌지 판별한다. - 소수라면, count + 1 - 소수가 아니라면, 넘어간다. 위의 규칙을 구현하여 count를 반환해주면 되는 문제로, 어렵지 않게 구현을 할 수 있었다. 풀이 방법을 정리하고 가장 먼저 떠오른 방법은, 파이썬의 itertools.combinations 모듈을 활용하는 것이었다. 주어진 인자의 모든 조합을 튜플로..

[Algorithm] BFS & DFS
Algorithm(PS) 2022. 6. 4. 09:23

코딩 테스트를 대비하여 자료구조와 알고리즘에 대해 정리하며 공부중입니다. 틀린 부분이 있을 수 있다는 점을 감안하고 봐주시기 바라며, 지적은 언제나 환영합니다. BFS, DFS 그래프를 탐색하는 방법에는 크게 너비 우선 탐색(BFS) 과 깊이 우선 탐색(DFS) 이 있다. 그래프(Graph) 정의 : Node(정점, vertex) 와 그 Node들을 연결하는 Edge(간선) 을 하나로 모아놓은 자료 구조. Node(정점) : 그래프의 특정 위치라는 개념으로 사용한다. 트리(Tree)구조와 다르게, Root node의 개념이 없다. Edge(간선) : Node간의 관계를 연결하는 선. 두 그래프의 Node의 갯수가 같아도, Edge의 갯수는 다를 수 있다. (Edge가 없을 수도 있다.) 그래프의 탐색 :..