분류 전체보기 57

1987_알파벳 (DFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 1987_알파벳 - 이 문제는 DFS를 활용하여 이미 거쳐간 알파벳인지 확인해주는 문제 - 입력된 알파벳 배열로부터 DFS 탐색을 하며 이미 내가 사용한 알파벳인지, 내가 거쳐갔던 길인지를 확인하면서 풀이하면 된다. - 문제 풀이는 DFS와 백트래킹을 활용하여 풀이했다. - 자세한 내용은 코드의 주석을 참고하자.

17136_색종이 붙이기 ( BackTracking )

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 17136_색종이 붙이기 - 이 문제는 백트래킹 방식으로 주어진 색종이를 가장 적게 사용하는 경우를 찾는 문제이다 - 입력으로 주어진 배열에서 색종이를 붙여야할 영역(1)에 대해 내가 가지고 있는 색종이를 가장 적게 사용하는 경우를 구하는 문제이다. - 문제의 로직을 이해하는 것은 어렵지 않으나 제한조건을 어떻게 줘야할지, 구현을 어떻게 해야할지 생각하는게 어려운 문제이다. - 문제 풀이는 백트래킹을 이용하여 풀이했다. - 자세한 내용은 코드의 주석을 참고하자. ( 제대로 풀이한 코드(첫번째)와 잘못 접근한 코드(두번째) 두개 모두 첨삭하였다. )

2210_숫자판점프 (DFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 2210_숫자판점프 - 이 문제는 DFS를 활용하여 백트래킹 조건을 잘 세우면 풀 수 있는 문제이다. - 입력된 숫자판으로부터 만들 수 있는 6자리 숫자를 모두 구하면 되는 문제이다. - 문제 풀이는 DFS와 백트래킹을 이용하여 풀이했다. - 자세한 내용은 코드의 주석을 참고하자.

9663_N-Queen (DFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 9663_N-Queen - 이 문제는 DFS로 입력받은 배열(체스판)을 전체 탐색하며, 주어진 퀸을 놓을 수 있는 모든 경우를 찾는 문제이다. - 백트래킹으로 유명한 문제이니만큼 탈출조건을 어떻게 세우냐가 관건이다. 이 문제에서는 퀸이 겹쳐지는 경우를 파악하고 접근하면 쉽게 풀이할 수 있다. ( 다만 글쓴이는 그것을 잘 해내지 못했었다 ㅎ) - 문제 풀이는 DFS를 이용하여 해결했다. - 자세한 내용은 코드의 주석을 참고하자.

9466_텀프로젝트 (DFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 9466_텀프로젝트 - 이 문제는 DFS를 활용하여 사이클을 찾는 문제이다 - 입력된 순서와 학생 정보를 토대로 노드의 연결관계가 주어지고, 이를 통해 사이클을 찾은 뒤 사이클에서 제외된 학생을 수를 구하는 문제이다. 문제의 요점은 "총 학생의 수에서 제외된 학생의 수"를 구하는 것이다. - 문제 풀이는 DFS를 이용하여 해결했다. - 자세한 내용은 코드의 주석을 참고하자.

11725_트리의 부모찾기 (DFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 11725_트리의부모찾기 - 이 문제는 DFS를 활용하여 "트리에 속한 각 노드"의 부모를 찾는 문제이다. - 트리의 루트는 1로 고정되어 있으니 입력값만을 생각하여 그래프로 착각해서는 안된다 - 문제 풀이는 DFS를 이용하여 풀이했다. - 자세한 내용은 코드의 주석을 참고하자.

10451_순열사이클 (BFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 10451_순열사이클 - 이 문제는 DFS를 활용하여 사이클을 찾는 문제이다 - 입력 순서(index N) 입력값 (input M ) 이 연결방향을 뜻하며 ( N->M ) 이 관계를 이용해 입력된 순열에서 사이클을 이루는 개수를 찾는 문제이다. - 사이클에 대한 정확한 개념을 익히고 문제풀이를 하길 바란다. - 문제 풀이는 DFS를 이용해 풀이하였다. - 자세한 내용은 코드의 주석을 참고하자.

4963_섬의개수 (BFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 4963_섬의개수 - 이 문제는 BFS를 활용하여 입력받은 지도에서 섬의 위치를 받을 경우 BFS로 탐색하는 문제이다. - 입력된 지도에서 섬의 위치( input : 1 ) 를 받았을때 연결된 섬들에 대해 BFS탐색을 하며 방문 표시를 해주며 지도의 끝까지 탐색을 해주는 문제이다. 지도를 전체 탐색하여 BFS 탐색 횟수를 반환해주면 된다 - 문제 풀이는 BFS를 이용해 풀이하였다. - 자세한 내용은 코드의 주석을 참고하자.

2331_반복수열 (DFS)

본 포스팅은 문제에 대한 접근에 문제가 없지만 코드를 구현함에 있어서 어려운 분들에게 도움이 되었으면 하고자하여 작성하게 되었습니다. 2331_반복수열 - 이 문제는 DFS를 활용하여 수열의 첫번째 인덱스부터 DFS탐색을 하다 중복된 값을 처음 만나는 지점을 찾아주면 된다 - 수열이 선형의 그래프로 표현되고 이것을 DFS, 깊이 우선 탐색으로 들어가다 중복 방문을 했을때 그 전의 깊이를 반환하여 풀이가 가능하다. 결국 재귀함수가 특정 조건(중복된 값을 다시 만나는 지점)에서 종료하는 것과 같으 ㄴ것이다 - 문제 풀이는 DFS를 이용하여 풀이했다. - 자세한 내용은 코드의 주석을 참고하자.

QILT - 이미지 태그 완료

QILT의 기본 토대가 완성되었다. 우선은 영상이나 이미지를 입력 받아 라벨링 이미지를 생성하는 부분만 완료시킨 상태이다. 아무래도 평일은 알고리즘 문제를 푸는 것만으로도 시간이 부족하여 토요일, 일요일에 작업을 하다보니 진도가 느린 편인 것 같다. 아래는 간단한 데모 영상이다 QILT -ver 0.0.1 이제 뽑아낸 데이터들이 학습 데이터로 사용할 수 있는지, 다른 연구개발 프로젝트에 사용하기 전 QILT 프로그램에서 간단한 영상처리 혹은 딥러닝 모델을 추가해볼 생각이다. 목표는 8월 내로 완료인데... 과연...