전체 글 58

1249. [S/W 문제해결 응용] 4일차 - 보급로

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15QRX6APsCFAYD&categoryId=AV15QRX6APsCFAYD&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] * BFS 유사문제: 단지번호붙이기, 최단경로 경로중 최소값을 넣어줘야하는 로직 !! 1. input & init 2. BFS() [소스 코드] 123456789101112131415161718192021222324252627282930313233343536373839404142..

Algorithm/SWEA 2019.07.11

[BOJ] - 16236. 아기 상어

[URL] https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의 크기는 2이고, 아기 상어는 1초에 상하좌우로 인접한 한 칸씩 이동한다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크 www.acmicpc.net [풀이 과정] * BFS + 시뮬 1. 아기 상어가 먹을 수 있는 물고기 개수를 구한다. 먹을 수 있는 물고기 개수 = ..

Algorithm/백준 2019.07.10

[BOJ] - 13023. ABCDE

[URL] https://www.acmicpc.net/problem/13023 13023번: ABCDE 문제의 조건에 맞는 A, B, C, D, E가 존재하면 1을 없으면 0을 출력한다. www.acmicpc.net [풀이 과정] *그래프 구현(벡터), 깊이우선탐색(DFS) 1. 배열로 깊이 우선 탐색 (시간 초과) 2. 그래프 깊이 우선 탐색 3. 연결관계 4개 찾으면 flag = 1로 바꿔주고 flag 값 검색하여 1이면 return; [소스 코드] 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162#include #include #include ..

Algorithm/백준 2019.07.10

[SWEA] - 1208. [S/W 문제해결 기본] 1일차 - Flatten

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] 1. 입력 2. 오름차순 정렬 3. 배열 맨 앞은 1증가, 맨 뒤는 1감소, 다시 정렬 --> 덤프 개수만큼 반복 [소스 코드] 12345678910111213141516171819202122232425262728293031323334#include #include using namespace std; int main(){ for (int tc = 0; tc

Algorithm/SWEA 2019.07.05

[BOJ] - 14502. 연구소

[URL] https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크기가 N×M인 직사각형으로 나타낼 수 있으며, 직사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽으로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 일부 칸은 바이러스가 존재하며, 이 바이러스는 상하좌우로 인접한 빈 칸으로 모두 퍼져나갈 수 있다. www.acmicpc.net [풀이 과정] * DFS, BFS 1. map입력 : 0인 곳 저장(빈공간), 2인 곳 저장(바이러스) --> 벡터에 저장 2...

Algorithm/백준 2019.07.03

[BOJ] - 2156. 포도주 시식

[URL] https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규칙이 있다. 포도주 잔을 선택하면 그 잔에 들어있는 포도주는 모두 마셔야 하고, 마신 후에는 원래 위치에 다시 놓아야 한다. 연속으로 놓여 있는 3잔을 모두 마실 수는 없다. 효주는 될 수 있는 대로 많은 양의 포도주를 맛보기 위해서 어떤 포도주 잔을 선택해야 할지 고 www.acmicpc.net [풀이 과정] *다이나믹 프로그래밍(dp) arr[ ] : 인덱스 별로 와인의 양을 입력받아 저장 dp[ ] : 인덱스까지..

Algorithm/백준 2019.07.01

[SWEA] - 1240. [S/W 문제해결 응용] 1일차 - 단순 2진 암호코드

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15FZuqAL4CFAYD&categoryId=AV15FZuqAL4CFAYD&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] *시뮬레이션 1. 초기화 + 입력받기 : clear(), input()함수 2. 2차원 배열 arr[][]에서 56자리수 찾아내기 3. 56자리수 1차원 배열 code[]에 담기 4. 7자리씩 끊어 check[][]배열과 비교하여 같으면 dap[]배열에 그 수 저장. : isSa..

Algorithm/SWEA 2019.07.01

[BOJ] - 17144. 미세먼지 안녕!

[URL] https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사과는 뛰어난 코딩 실력을 이용해 각 칸 (r, c)에 있는 미세먼지의 양을 실시간으로 모니터링하는 시스템을 개발했다. (r, c)는 r행 c열을 의미한다. 공기청정기는 항상 왼쪽 열에 설치되어 있고, 크기는 두 행을 차지한다. 공기청정기가 설치되어 있지 않은 칸에는 미세먼 www.acmicpc.net [풀이 과정] * 시뮬레이션 1. input() -> map[][]정보값 입력 받는다. // 미세먼지면 벡터에 저장..

Algorithm/백준 2019.06.25

[SWEA] - 1244. [S/W 문제해결 응용] 2일차 - 최대 상금

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15Khn6AN0CFAYD SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] 재귀 완전 탐색 첫번째 시도.(실패) 각각 N번의 경우마다 최상을 찾아감 -> 각각의 경우 중 최선이지만, 최종 안되는 경우가 생김 두번째 시도. 전체 (N번 * 경우의수) 중 제일 큰 값을 찾는다. 현재의 위치: cur를 기준 오른쪽을 탐색하며 오른쪽값이 큰 숫자이면 swap swap경우 cnt++ 하여 재귀로 탐색 dfs() [소스 코드] 1 2 3 4 5..

Algorithm/SWEA 2019.06.22