profile
내가 다시 보기 위해 기록합니다.
post-thumbnail

<Baekjoon> #3584_LCA, DFS 가장 가까운 공통 조상 java

\[BOJ 참고로 이 문제도 예전에 C++로 풀었는데 그땐 Heap으로 풀었었다. 하지만 문제에서 의도한 알고리즘은 아닌 것 같아서 JAVA 문법 익힐 겸 다른 풀이를 참고하며 풀었다. (JAVA로 알고리즘 푸는 거 고역이다..) 문제 제목에서도 주어진대로 가장 가까운

2022년 7월 17일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #23290 Simulation, BFS, DFS, Backtracking_마법사 상어와 복제 c++

\[물고기는 자신의 위치와 방향을 가지고 있고, 상어에게 잡아먹히면 죽는다. 따라서 위치(y,x), 방향(d), 생존여부(alive)의 정보를 담은 구조체를 만든다맵의 한 칸에는 물고기의 번호 (여러 개 가능), 냄새가 저장된다. 따라서 물고기 번호 vector&lt;

2022년 4월 15일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #21603 Simulation,Graph,DFS,BFS_상어 중학교 c++

#21609 상어 중학교 배열 회전 참고

2022년 4월 11일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #20058 Simulation, 구현 마법사 상어와 파이어스톰 c++

\[문제는 크게 파이어스톰을 크기가 2^L\*2^L인 부분으로 나누어 시계 방향으로 90도로 회전하는 부분, 얼음의 양을 줄이는 부분, 가장 큰 덩어리를 찾는 부분으로 나눈다참고로 비트 연산자 >>은 2의 거듭제곱으로 나누기, &lt;&lt;은 2의 거듭제곱을 곱할 때

2022년 3월 31일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #1520 Dyamic Programming, DFS_내리막 길 c++

\[처음 칸에서 상하좌우 이웃한 곳을 탐색해서 제일 아래 칸으로 내려간다는 점에서 dfs를 이용해 풀어야 한다는 것을 알 수 있다처음에 dfs만을 이용해 풀었다가 시간 초과가 났다. map의 크기가 최대 500\*500이므로 완전탐색 dfs 방법으로 풀면 최악의 경우

2022년 3월 21일
·
0개의 댓글
·
post-thumbnail

<Programmers> Lv2 DFS_단체사진 찍기 c++

data 원소는 다섯 글자로 구성된 문자열첫 번째 글자와 세 번째 글자는 프렌즈들의 알파벳 앞글자두 번째 글자는 항상 ~네 번째 글자는 {=, &lt;, >}중 하나이고 프렌즈들 간 거리가 같음, 미만, 초과를 의미다섯 번째 글자는 0이상 6이하의 정수 문자형이며 각

2022년 3월 18일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #15684 DFS, BruteForce_사다리 조작 c++

#15684 사다리 조작 참고

2022년 3월 2일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #13460 DFS,BFS_구슬 탈출 c++

#13460 구슬탈출 참고

2022년 2월 23일
·
0개의 댓글
·

<Baekjoon> #17142 BFS,DFS_Lab3 c++

\[이전에 거의 비슷한 문제\[문제를 풀 때 미처 생각지 못한 조심해야하는 부분들이 있어서 문제를 해결하는데 상당히 오랜 시간이 걸렸다.1\. Initialize먼저 연구소의 모든 칸에 빈칸과 바이러스를 입력하며 빈칸의 갯수(emptySize)와 바이러스가 있는 좌표들

2022년 2월 22일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #19263 DFS, Backtracking 청소년 상어 c++

\[참고1 참고2삼성 SW 기출 문제를 풀 때 유의할 점은 문제에 나와있는 조건을 하나라도 놓치면 안 된다. 각 조건을 정리해보면물고기1\. 물고기는 번호와 방향을 가지고있다2\. 번호가 작은 물고기부터 이동을 한다3\. 상어가 있는 칸이나 범위 밖으로는 이동할 수 없

2022년 2월 20일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #2580 DFS_Sudoku c++

\[빈 칸을 채울 때 3x3 정사각형 내에서 숫자를 겹치지 않게 하는 부분과 시간 초과때문에 힘든 문제같다vector&lt;pair&lt;int, int>>vp;먼저 스도쿠 판에 숫자를 입력 받을 때 빈 공간 즉, 0으로 입력 받는 부분의 좌표를 vp에 저장하고 받을

2022년 2월 13일
·
0개의 댓글
·

<Baekjoon> #16198 DFS, Backtracking_에너지 모으기 c++

구슬이 주어졌을 때 하나씩 제거하다가 마지막 2개가 남았을 때 에너지의 총 합의 최대를 구해야하는 문제다. 예를들어 {a,b,c,d} 의 구슬이 주어졌을 때, 처음 b를 제거 하고 c를 제거한 것과 처음 c를 제거하고 b를 제거하는 것의 에너지 총 합은 다르기 때문에

2022년 2월 13일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #9663 DFS_nQueen c++

\[참고1, 참고2n Queen Problem 은 대표적인 Backtracking의 예제라고 한다.처음에는 단순하게 NxN 체스판 위의 모든 좌표에 대해 한 좌표를 기준으로 x축, y축, 대각선을 모두 구하는 방법으로 해야 하나 했다..그래서 여러 블로그를 보고 공부한

2022년 2월 7일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #14500 DFS_테트로미노 c++

\[처음에는 문제를 보고 모든 테트로미노의 모양을 구해야 하는 아이디어밖에 떠오르지 않았다. 그래서 다른 사람들의 풀이를 많이 참고했다. (실제로 어떤 사람은 모든 경우의 수를 구한 사람도 보았다)먼저 테트로미노를 보면 ㅜ 이 모양 이외에는 깊이가 4인 모양임을 알 수

2022년 2월 6일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #14888 DFS_연산자 끼워넣기 c++

삼성 코딩테스트 기출 문제라고 한다 숫자들이 주어지고 그 사이에 적절하게 연산자를 끼워넣어서 최댓값과 최솟값을 구해야 한다. 주어진 연산자를 모두 다 썼을 때의 sum을 maxSum, minSum 과 비교해서 최댓값, 최솟값을 구해준다. > e.g. num={1,2

2022년 2월 6일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #1182 DFS_부분 수열의 합 c++

\[합이 s가 되는 부분 수열 합의 개수를 구하는 문제는 dfs를 이용하여 간단하게 풀 수 있다.예를 들어 {-7, -3, -2, 5, 8}의 수열이 주어졌을 때, 처음 합 sum=0에서 ⓐ-7을 더하는 것과 ⓑ더하지 않는 부분으로 나누고 ⓐ-7을 더한 곳에서 ⓒ-3을

2022년 1월 31일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #6603 DFS_로또 c++

#6603 로또 > 1. 생성 먼저 49가지 수 중 k개의 수를 골라 담을 벡터 를 만들고 k개중 6개를 뽑아서 넣을 를 만듦 > 2. dfs 함수를 반복하는데 인자를 둔다. 는 의 index, 는 의 index다. 즉 는 이때까지 뽑힌 로또의 개수

2022년 1월 31일
·
0개의 댓글
·