본문 바로가기

알고리즘112

[프로그래머스] 가장 먼 노드(Level3) (Python) 문제 출처 : programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr 문제 풀이 : 자료구조 중 그래프를 이용하여 풀 수 있는 간단한 문제이다.(왜 level3인 걸까? 아마도 그래프라는 자료구조가 구현하기 쉽지 않아서 인가? 파이썬의 경우는 굉장히 쉽지만) 이런 류의 문제를 풀때 나는 cycle을 돌릴때마다 next_dq와 같이 다음에 순찰해야하는 후보들을 넣는 자료구조를 따로 정의하여 푼다. 이런식으로 풀어야 각 단계별로 거리를 더해주는것이 안 헷갈린다.(고수님들은 이런거 따로 안 만들고도 잘 푸.. 2020. 10. 11.
[프로그래머스] 순위(Level3) (Python) 문제 출처 : programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr 문제 풀이 : 그래프 로 분류 되어있는 문제인데 그래프 라기보단 논리 문제라고 생각했다. 처음 문제를 보았을때 손으로 쓰면 간단하게 파악하는 로직(A가 B에게 지고 B가 C에게 진다면 A는 C에게 진다) 를 어떻게 코딩해야하는지 의문이였다. 그 다음으로 의문점은 지고 이기는 관계를 파악했을 때 해당 선수의 순위를 결정할 수 있는 기준을 어떻게 처리해야하는지가 의문이였다. 다른 블로그를 참고하여(inspirit941.tistory.com/entry/Python-%ED%9.. 2020. 10. 11.
[백준] 17142 - 연구소3(Python) 문제 출처: www.acmicpc.net/problem/17142 17142번: 연구소 3 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고 www.acmicpc.net 문제 풀이: 삼성 기출은 대부분 BFS, DFS, 구현으로 끝나는 거처럼 이 문제 또한 구현이다. 핵심이 되는 부분은 "활성 바이러스가 비활성 바이러스가 있는 칸으로 가면 비활성 바이러스가 활성으로 변한다."라고 쓰여있는 부분이라고 생각한다. 활성 바이러스가 비활성 바이러스가 있는 칸으로 넘어갈 때는 1초의 시간이 걸리지만 실제로 비활성 바이러스도 바이러스로 치기 때문에 비활성 바이러스를 굳이 활성화시키지 .. 2020. 10. 11.
[백준] 12851 - 숨바꼭질2(Python) 문제 출처: www.acmicpc.net/problem/12851 12851번: 숨바꼭질 2 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 � www.acmicpc.net 아마도 이걸 보시는분들은 다들 문제를 보고오셧기 때문에 따로 문제설명은 안해도 될 것이라 생각합니다. 문제 풀이: 숨바꼭질 시리즈 중 하나고 전형적인 BFS 문제입니다. 다만 조금 까다로웠던 점은 최소 시간 뿐 아니라 갈 수 있는 방법의 수를 적어야 한다는 것이다. 처음에는 간단하게 생각했었는데 중복되어서 가는 방법의 수를 세는 것이 어려웠다. from co.. 2020. 10. 10.
반응형