문제미세먼지 안녕 ! 문제 설명미세먼지 확산미세먼지가 있는 칸은 배열을 넘지 않으면서 공기 청정기를 피해 확산이 된다. 한칸에 있는 미세먼지가 확산을 하자마자 확산된 미세먼지 값을 추가 시켜버리면 기존의 미세먼지 양이 변경되므로 한칸당 미세먼지의 실제값과 확산에 의해 추가된 양을 동시에 갖고 있어야 한다. 그래야 한번의 확산과정이 끝나고 배열 전체를 돌면서 추가된 양을 실제값에 더해주면 된다. 또한, 미세먼지가 확산이 되고 남은 미세먼지의 양을 계산할 때 확산이 얼만큼 됬는지도 알아야 하기 때문에 확산된 칸수도 갖고 있도록 한다. 미세먼지 확산 과정을 구체적으로 알아보도록 하자. 배열을 처음부터 탐색을 한다미세먼지가 존재한다면상하좌우로 배열을 넘지 않고, 공기 청정기를 피해서 미세먼지 값을 확산 시킨다3..
문제문제 이동문제 설명아기 상어가 거리가 가까운 물고기를 어떻게 찾아야 할까 ?BFS ( bool 방문 배열 ) BFS 를 통해 물고기를 찾는 과정에서 어떤 자료구조를 사용해야 할까 ? queue pair(✅)거리가 같은 물고기들이 많다면 가장 위쪽 , 가장 왼쪽인 물고기를 어떻게 알 수 있을까 ?BFS 를 돌면서 물고기들을 만날때마다 vector pair 에 저장해두어 sort 를 이용. 구현초기 queue 에 상어의 위치를 넣고 , 방문 배열을 false 로 만들어 준다.queue 의 size 동안 queue의 front 좌표에 물고기를 먹을 수 있다면 => vector 용기에 담아줌물고기를 먹을 수 없다면(1). 배열 범위 넘지 않고 (2). 방문 배열이 false 이고(3). 상어 크기보다 작거나..
문제 문제로 이동 문제 설명1 X 1 의 칸에 여러 나무들을 심을 수 있으므로 나무들의 나이를 모두 기억해야 합니다. => struct 기반의 2차원 배열을 사용typedef sturct{ int tree[2000]; int size=-1; // tree의 index 용 int yummy=5;//초반의 양분은 5로 setting}TREE;TREE arr[101][101]; 입력받은 K년마다 봄, 여름 , 가을 , 겨을 을 겪으면서 나무 재테크(?)를 해야하는데, 봄 여름 과정을 통일 시킬 수 있습니다. 봄 , 여름봄이 왔을 때, 나이가 적은 나무부터 양분을 섭취하게 되면 양분이 없어 나이가 많은 나무들은 죽게 됩니다. 이때, (죽은 나무들 / 2) 의 계산값을 변수에 모아두..
안녕하세요 !!! 우디 ✨ 입니다 . 문제백준 에디터 문제 문제 설명저는 이중 연결 리스트 ( Doubly Linked List ) 로 풀었습니다. 먼저, 헤드 노드를 이용하여 리스트에 접근할 수 있게 만들어 주었습니다.문제에서의 cursor는 노드를 가르키는 포인터 변수를 따로 만들어 주었습니다. ( 그 이유는 헤드노드를 cursor의 역할로 할 수도 있겠지만, 그렇게 되버리면 나중에 답을 출력할때 순서가 꼬이게 됩니다 . ) 위의 그림처럼 실제 cursor의 위치는 연결리스트 에서는 cursor의 오른쪽 문자가 들어있는 노드를 가르키게 했습니다. 즉, 노드를 가르키는 cursor의 위치는 실제로 cursor가 가르키고 있는 문자 왼쪽에 위치하게 됩니다. 이를 이용하여 P $를 처리할 함수와 문자열 입..
안녕하세요 !!! 우디 ✨ 입니다 . 문제 백준 사다리조작 링크 문제 설명우선, 코드의 구조를 대략적으로 아래처럼 구분했습니다. 완전 탐색 ( DFS 사용 )으로 모든 경우의 수를 가려내 답을 찾아냄 .주어진 예제만으로 답을 찾아냄 . 문제를 읽자마자 완전 탐색을 해서 답을 가려내야 겠구나 ,,, 라는 생각이 먼저 들었습니다.또한, 완전 탐색을 하기도 전에 주어진 예제가 답 ( 0 // 놓는 다리가 없으니 ) 인 경우를 살펴보았는데요 ~ ! 주어진 예제속 가로선 = 0 일 때 // 놓을 수 있는 다리가 없으니 바로 답이 0 다리를 놓기도 전에 주어진 사다리가 정답 ! // 다리 놓을 것도 없이 퍼풱트한 사다리 ~ 구현 ( 주석 설명 O )x#include #include #include #include..
안녕하세요 !!! 우디🌝 입니당 ~오늘은 시험감독 문제에 대해서 설명해드리겠습니다 ! 문제[백준 13458] 시험감독 바로가기 링크 문제 설명이 문제는 단순한 계산 문제이나 ,,, 함정이 숨어있습니다 ! 저도 낚였네용 ㅎㅎㅎ 총감독관은 각각의 시험장에 오직 1명 (모든 시험장에 1명 투입)시험장이 최대 안의 응시생들도 최대 but, 감독관이 감시할 수 있는 응시생들 최소일때 ✔ 우선, 총감독 배치하고 각 시험장에 남은 응시생들을 배열에 담아줍니다.xxxxxxxxxx//b : 총감독이 감시할 수 있는 응시생if(배열값 n; for (int i = 0; i > arr[i]; cin >> b >> c; long long int answer = n; for (int i = 0; i b..
안녕하세요 !!! 우디🧞🧞♀입니다 ~오늘은 경사로 문제에 대해 설명해드리겠습니다 ! 문제[백준 14809] 경사로 바로가기 링크 문제 설명 ☝ . 최종 답은 2 X N(지도크기) 으로 지정 후, 한줄씩 탐색할때마다 경사로 놓여질 수 없으면 -1한 후, 다음 줄 탐색✌ - 1. 현재의 높이가 다음 높이보다 높은 지 낮은지 보고 경사로 놓을 위치 탐색 (L만큼 for문 돌아주기) - 2. 경사로가 놓여진뒤 그 뒤로 경사로를 더 놓아야 할 때, 경사로가 겹치지 않게 놓일 수 있는지 확인 🤹 : 키포인트에 맞춰서 어떻게 구현했는지 알려드리겠습니다 ~ 🧡💛💚💙💜 ☝ . 최종 답은 2 X N(지도크기) 으로 지정 후, 한줄씩 탐색할때마다 경사로 놓여질 수 없으면 -1한 후, 다음 줄 탐색 ..
안녕하세요 우디🍒입니다 .오늘은 DFS로 푸는 연구소 문제에 대해 설명해 드릴께요. 문제[백준 14502번] 연구소 바로가기 문제 설명✅ KEY POINT벽은 꼭 3개를 세워야 한다. => 가능한 모든 3개의 좌표 조합을 봐야함. DFS이 문제는 최적화로 한방에 똬 ! 벽을 3개 세워서 최댓값을 바로 뽜 ! 구할 수 있을까요 ? 😁 : 구할 수 없습니다. 따라서 벽 3개를 세울 수 있는 모든 좌표쌍들을 살펴봐야하는데요 ~ 더 자세한 설명은 코드와 함께 설명드리겠습니다 !코드x#include #include #include #include #include using namespace std;static int n, m;int arr[10][10];//입력받을 배열int tmp[10][10];//안전영역을..
- Total
- Today
- Yesterday
- IT#백준#연구소#DFS
- it#일상#코로나#그만#백준#알고리즘#안드로이드#개발자
- iT#it#백준#시험감독#코로나#이겨내요#대한민국#화이팅
- IT#it#삼성#백준#경사로#코로나#화이팅
- 백준#알고리즘#코로나#IT#구슬탈출2#13460#공부#개인공부#독학#노력
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |