profile
Backend 개발자 지망생
post-thumbnail

<Baekjoon> #1939 중량제한_Binary Search, DFS java

\[답으로 구해야하는 것이 무엇인지 생각해볼 필요가 있는 문제였다 → "한 번의 이동에서 옮길 수 있는 물품들의 중량의 최댓값"을 구하는 문제이다 일반 그래프 문제에서 요구하는 최소 이동거리, cost의 최소 등과는 다르다 → A에서 출발해서 B로 가는 지점 중 다리

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

<Baekjoon> #1525 퍼즐_graph, HashMap java

\[문제의 핵심은 3\*3 2차원 배열에 존재하는 숫자들을 좌상단부터 우하단까지 이어지는 숫자 (1차원 배열, 엄밀히 말하면 String 형)로 표현하는 것이다 위에서 변형한 String형태를 HashMap에 넣어 관리한다. HashMap &lt;String, Inte

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

<Baekjoon> #3954 Brainf**k 인터프리터_Simulation, Stack java

\[문제가 단순해 보이는데 이해하는데 꽤 오랜 시간이 걸렸다..문제는 프로그램이 주어졌을 때, 이 프로그램이 끝나는지 아니면 무한루프에 빠지게 되는지 구하는 것이고, 무한루프에 빠졌을 때는 어느 부분이 무한루프인지를 출력하는 문제다프로그램이 최대로 수행될 수 있는 횟수

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

<Backjoon> #9997 폰트_Brute Force, Recursion, BitMask java

\[문제는 단순히 단어를 몇 개 선택하여 문장을 만들었을 때, 이 문장 안에 a~z까지 모든 알파벳을 포함하고 있는지 확인하고 이런 문장이 몇 개 있는지를 출력하는 문제이다현재까지 나온 알파벳의 개수를 저장하는 배열 int\[26] checked 을 만들고, 한 단어

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

<Baekjoon> #11659 #11660 구간 합 구하기

#11659 구간 합 구하기4 #11660 구간 합 구하기5 #11659 구간합4 Idea 구간 합 구하기 문제의 핵심은 누적합을 Memoization 기법을 사용하여 해결하는 것이다 N과 M이 최대 100,000이기 때문에 그냥 for문을 돌려서 찾을 경우 최악의

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

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

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

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

<Baekjoon> # 1593 Sliding Window_문자해독 c++

문제문자열 S안에서 단어W의 순열 중 하나가 부분 문자열로 들어있는 모든 경우의 수를 계산문자열 W의 길이가 g라고 했을 때, 문자열 S에서 g만큼 떼서 보았을 때 그 문자열을 구성하는 각 글자들이 W를 구성하는 각 글자들과 동일한지 살펴본다문자열 S의 처음부터 g길이

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

<Baekjoon> #1079 Brute Force_마피아 c++

\[은진이가 마지막으로 남은 마피아일 때 종료 조건은 1. 참가자가 1명이 남고 그 사람이 시민일 경우, 2. 참가자가 1명이 남고 그 사람이 은진이일 경우 이다게임이 종료될 수 있을 때까지 모든 경우의 수를 따져보아야하는 Brute Force 문제각 사람들의 유죄지수

2022년 5월 25일
·
0개의 댓글
·
post-thumbnail

<Baekjoon> #4485 BFS, Dijkstra_녹색 옷 입은 애가 젤다지? c++

문제는 (0,0)에서 시작해 (N-1, N-1)까지 갈 때 최소 비용을 구하는 것처음에는 dp를 풀 때 외발뛰기, 삼각형 위의 최대 경로 같은 문제들을 생각하며 dp로 풀어야 하나 생각했지만 링크는 동서남북으로 움직일 수 있으며 그때마다 이미 구했던 최적의 해는 바뀔

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

<Baekjoon> #23289 Simulation_온풍기 안녕! c++

\[(문제를 푸는데 벽을 설정하는 아이디어가 떠오르지 않아 모든 코드를 참고했다){동,서,남,북}의 방향을 {0,1,2,3} 으로 설정한다입력 받아야 하는 값에는 온풍기의 좌표와 방향, 벽의 좌표와 벽이 세워진 방향, 온도를 조사해야하는 좌표가 있다온도를 조사해야하는

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

<Baekjoon> #17822 Deque, BFS, Simulation_원판 돌리기 c++

원판을 한 칸씩 돌릴 때마다 원판의 마지막 값이 가장 앞으로 오고, 앞의 값이 마지막 값으로 간다는 점에서 deque 자료 구조를 이용한다이웃한 원판의 수를 지울 때 bfs, 너비 우선 탐색을 이용하는데 이때 같은 원판 내에서 처음 끝과 마지막 값이 이웃한다는 점을 주

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

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

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

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

<Baekjoon> #19237 구현_어른 상어

\[struct SHARK 정의상어는 위치와 방향, 그리고 각 방향으로 향하고 있을 때마다 우선 순위 방향을 가지고 있다같은 칸에 여러 상어가 있을 경우 가장 낮은 번호의 상어만 남기고 죽기 때문에 상어가 살아 있는지 아닌지 판단하는 변수 필요struct MAP_INF

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

<Baekjoon> #1753 Dijkstra_최단경로 c++

\[단일 시작점 최단 경로 알고리즘으로, 시작 정점 s에서부터 다른 정점들까지의 최단 거리를 계산우선 순위 큐에 지금까지 찾아낸 해당 정점까지의 최단 거리, 정점의 번호를쌍으로 넣음 priority_queue &lt;pair&lt;int, int>> pq; 정점까지의

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

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

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

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

<Baekjoon> #11047 #2293 #2294 Greedy vs Dynamic Programming_동전0, 동전1, 동전2

K원을 만드는데 필요한 동전 개수의 최솟값을 만들기 위해서는 동전의 가치가 큰 동전부터 사용해야 한다동전의 가치가 큰 동전부터 사용하다가 K원에서 현재 동전을 뺐을 때, 0보다 작아진다면 다음으로 가치가 큰 동전을 사용한다using namespace std;int N,

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

<Baekjoon> #2293 Dynamic Programming_동전1 c++

\[참고n가지 종류의 동전을 사용하여 k원을 만드는 경우의 수를 구하는 문제 (순서만 다른 경우는 같은 경우이다)dp\[a]=b일 때, a원을 만드는 방법은 b개이다 라고 정했을 때우선 dp\[0]=1이다. 0원을 만드는 방법은 하나도 선택하지 않는 경우로, 이 경우를

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

<Beakjoon> Dynamic Programming_#2579 계단 오르기 #2156 포도주 시식 c++

\[\[마지막 계단/포도주를 골라야 한다는 조건 빼고는 본질적으로 동일한 문제다이 문제를 정확하게 이해하는데 이틀이 걸렸다..계단 오르기를 예시로 들면dp\[i]=i번째 계단을 밟았을 때 얻을 수 있는 최대 점수로 두고 점화식을 도출해본다(각 계단에 적혀있는 점수는 s

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

<Baekjoon> #17140 이차원 배열과 연산 c++

\[💬아이디어예로 {3,1,1}에는 3이 1번, 1이 2번 등장한다.정렬 기준은 수의 등장 횟수가 커지는 순으로, 그게 여러개라면 수가 커지는 순으로 정렬한다.이 말은 수의 등장 횟수를 오름차순으로 정렬한다는 뜻이고 나타내면 {3,1,1,2}와 같다숫자와 이 숫자가

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

<Baekjoon> #16234 BFS_인구 이동 c++

#16234 인구이동 💬 문제정리 국경선을 공유하는 두 나라의 인구 차이가 L이상, R이하라면 하루동안 국경선을 연다 국경선이 열린 나라들을 연합이라고 하며 각 칸의 인구수는 (연합의 인구수)/(연합을 이루고 있는 칸의 개수) 가 된다 연합을 해체하고 모든 국경선을

2022년 3월 6일
·
0개의 댓글
·