문제 Gold5 https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 풀이 같은 색이 상하좌우 한곳이라도 인접해있으면 같은 area로 되므로, 깊이우선탐색을 통해 같은 구역을 확인한다. 문제에서 '같은 색상이 상하좌우로 인접해 있는 경우'라고 되어 있어서 상하좌우에 모두 인접해있어야 한다고 생각했었다...┗|`O′|┛ 일반인이 보는 구역을 확인하기 위해 입력받은 배열 그대로 DFS를 돌린다. DFS를 돌리면서, 'G'색을 만나면 해당 인덱스에..
문제 Gold5 https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (1 ≤ Si < Ti ≤ 109) www.acmicpc.net 풀이 우선순위 큐(PriorityQueue) 활용 우선순위 큐란? 들어온 순서대로 데이터가 나가는 것이 아닌 우선순위를 먼저 결정하고 그 우선순위가 높은 엘리먼트가 먼저 나가는 자료구조 문제에서는 강의가 가장 일찍 끝나는 강의실이 우선순위로 배정되어야 함(PriorityQueue Default) 강의의 start와 end를 int[]로 입력받아 저장.끝나는 시간을 기준으로 오름차 순 정렬.첫 번째 원소의 endTime을 큐에 먼..
문제 SWEA(SW Expert Academy) 3234번 준환이의 양팔저울 [D4] 풀이 양팔저울에 올리는 순서 정하기 => 순열 어느쪽에 올릴지 정하기 => 부분집합 무게를 입력받아 우선 올려놓을 순서를 정함. sorted배열에 실행완료 된 순열을 저장하며, 순열이 완성되었을 경우(cnt==N) 어느쪽에 올릴지 정함. 현재 추를 오른쪽에 올리는 경우, 왼쪽에 올리는 경우를 각각 실행. 실행도중 left
문제 SWEA(SW Expert Academy) 1223번 계산기2 [D4] 풀이 스택을 이용하여 후위표기식을 작성/계산하는 문제 후위표기식 변환 만약 숫자일 경우, 바로 출력(여기에는 후위표기식 문자열carr에 저장)하고 연산자일 경우, 우선순위에 따라 스택에 pop/push. 스택에서 자신보다 낮은 우선순위 연산자가 나올 때까지 계속 pop하여 출력한다. 즉, 자신보다 높거나 같은 우선순위 연산자를 모두 pop 현재 문제에서는 +, *밖에 없으므로 +는 스택에 있는 모든 연산자를 출력하고, *는 peek()값이 *일 때 출력한다. 우선순위에 따른 연산자 출력 후, 자기 자신을 push 후위표기식 계산 문자열배열(carr)을 순회하며 숫자일 경우 stack에(이전과 다른 스택 사용) push하고 연산자..