https://www.acmicpc.net/problem/1262최초에는 Array에 알파벳 다이아몬드를 만들어 놓는 방식을 생각 했다. 이 방식의 경우는 문제에서 최대 다이아몬드의 크기가 39999 \* 39999 였기 때문에 무리가 있는 방식이였다. 시간
그리디 알고리즘은 현재 상황에서 지금 당장 좋은 것만을 고르는 방법일반적인 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올리고 이것이 정당한지 검토할 수 있어야 한다.그리디 해법은 그 정당성 분석이 중요하다. 그리디 해법이 정당한 이유는 드물게 중요한데,
트리 구조는 편리한 구조를 보여주는 것 뿐만 아니라 효율적인 탐색을 위해서 사용 된다. 많은 트리 모양 중 이진 트리와 이진 탐색 트리는 효율적인 탐색을 위해 사용 된다.이진 트리는 노드가 최대 두 개의 자식 노드를 가지는 트리이다.이진 트리의 특징은 다음과 같다.노드
DP는 다이나믹 프로그래밍 , 동적 계획법이라는 것은 하나의 큰 문제를 작은 문제로 나누어 푸는 방법이다.하나의 작은 문제를 풀어 그 결과를 저장 하여 다시 큰 문제를 해결 할 때 사용한다.사실 이름은 멋져 보이는데 그냥 멋있어 보이게 지은 것 뿐 다른 의미는 없다.
간단하게 말해서 5가지의 CCTV 종류를 통해 감시 할 수 없는 지역이 가장 적은 경우의 수를 구해야 한다. 1번 CCTV 의 경우 좌 , 우 , 상 , 하 중 1 가지의 방향 2번 CCTV 의 경우 좌우 , 상하 중 1가지 ,3번 CCTV 의 경우 상우 , 하좌 ,
N-Queen 문제는 N\*N 체스판에 N개의 퀸을 서로 공격할 수 없게 놓는 문제이다. 퀸은 가로, 세로, 대각선으로 이동할 수 있기 때문에 퀸이 서로 공격할 수 없게 놓으려면 퀸이 서로 같은 행, 같은 열, 같은대각선에 놓이면 안된다. N이 주어졌을 때, N-Que
이문제는 BFS 너비우선 탐색으로 풀 수 있는 문제이다.여기서 어려운 점은 BFS , 벽을 세울 수 있는 모든 경우의 수의 조합을 생각해야 한다는 것이다. 단순한 문제 였다면 입력에 벽의 개수가 주어지고 벽을 세울 수 있는 좌표가 주어졌을 것이다.그러나 이 문제는 3개
먼저 문제를 보면 1번 정점에서 N번 정점으로 가는 최소 비용을 구하는 문제이다.최소 비용 하면 두 가지가 떠오르는데 아무래도 다익스트라 알고리즘을 떠올릴 것이다. 플로이드 워셜은 반드시 거쳐가야할 정점이 있을 때 사용하는 알고리즘이다.다익스트라 알고리즘은 시작 정점에