분류 전체보기
-
[Algorithm] priority_queue알고리즘 2024. 2. 1. 12:00
1. priority_queue : 완전이진트리 (complete binary tree) 2. heapify : 직접 연결되어 있는 노드끼리 비교해서, - max heap 기준 : 큰 값을 위로 올린다. - min heap 기준 : 작은 값을 위로 올린다. - Ex. heapify 3. priority_queue 와 algorithm의 sort 정렬 차이 똑같이 less 정렬 시, heapq(priority_queue)는 내림차순으로 정렬되고, sort 정렬 시, vector가 오름차순으로 정렬됨을 볼 수 있다. priority_queue는 less 와 같이 사용하고, sort는 less() 와 같이 사용한다. #include #include #include #include using namespace ..
-
[Algorithm] Flood Fill (+BFS)알고리즘 2024. 1. 31. 09:43
Flood Fill - 흘러넘치다, 채우다. - 다차원 배열에서 시작점과 연결된 영역들을 찾는 알고리즘 - 2차원 이상의 배열에서 이루어지는 BFS - 즉 특정 좌표 (y, x) 상에 있는 노드 기준으로 BFS 탐색하는 방법 * Ex. 지도 상에서 최단 경로를 구할 때 BFS 설계 1. 큐 생성 2. 시작점을 큐에 push() 3. 큐 맨앞의 값을 확인 front() 4. pop() 5. 다음 경로들 탐색 6. 다음 경로들을 큐에 push() 7. 3 ~ 6 과정 반복 Flood Fill Example Code - BFS와 동일하지만, 노드로 (y, x) 좌표를 가진다. - 또한 방향 배열을 통해 퍼져나갈 영역을 정의해두고 탐색한다. * C++에서는 struct 키워드를 생략가능 #include #inc..
-
memset 함수공부/C++ 2024. 1. 25. 11:43
- memset(시작 주소, 원하는 값, 바꿀 길이) : 특정 메모리를 원하는 값으로 초기화 할 때 사용 char 배열에서는 원하는 값으로 초기화 가능하고, int 배열에서는 0 과 -1 로 초기화하는 경우에만 사용가능하다. - memset에서의 메모리 초기화 예를 들어 int arr[100] 을 1 로 초기화 하는 경우에 사용자가 의도한 바는 1은 arr[index] : 00000000 00000000 00000000 00000001 //int는 4 바이트 memset 이 실제로 바꾸는 1은 00000001 00000001 00000001 00000001 //각 바이트를 1 로 변경 - memset(arr, 0, size), memset(arr, -1, size) // 0 : 00000000 00000..
-
[SSAFY] 11기 웰컴 키트일상/회고 또는 후기 2024. 1. 24. 20:46
SSAFY관련 첫 글이네요 !! SSAFY? https://www.ssafy.com/ksp/jsp/swp/swpMain.jsp 삼성 청년 SW 아카데미 삼성 청년 SW 아카데미| 소프트웨어 교육, 취업 지원, 코딩 교육 www.ssafy.com 삼성의 SW 교육 경험과 고용노동부의 취업 지원 노하우를 바탕으로, 취업 준비생에서 SW역량 향상 교육 및 다양한 취업 서비스를 제공하는 프로그램... 암튼 그렇습니다. 암튼, 저는 서울캠퍼스에 싸피 11기로 입과했는데요. 어느날 강의실에 가보니, 웰컴 킷이 와있었습니다. - 구성품 웰컴 키트입니다. - 후드 집업, (입다가 그대로 강의장에 놓고와버림) - 반팔 - 개발자 냄새나는 스티커 - 셀카봉 - 에코백 - 텀블러 셀카봉이 세울 수도 있고, 퀄리티는 정말 좋..
-
[백준] 23289 온풍기 안녕!알고리즘/백준 2024. 1. 14. 06:10
- 문제 https://www.acmicpc.net/problem/23289 23289번: 온풍기 안녕! 유난히 추운 날씨가 예상되는 이번 겨울을 대비하기 위해 구사과는 온풍기를 설치하려고 한다. 온풍기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기 www.acmicpc.net - 문제 설명 저번에 풀었던 미세먼지 안녕! 과 비슷한 문제이다. 문제를 꼼꼼히 읽고, 시간을 들여, 구현만 잘 해주면 되는 문제이다. 탐색, 구현, 시뮬레이션 1. 온풍기들이 모두 작동되고, 각 칸 마다 더해줘야하는 온도를 구함 - 온풍기의 방향에 유의 - 온풍기가 작동하는 영역을 DFS로 탐색하면서 각 칸 마다 더해줘야하는 온도 계산 - 벽으로 막혀 있는 경우를 고려하여 탐색 2. 각..
-
[우선순위 큐] priority_queue 사용자 정의 함수공부/C++ 2023. 12. 27. 19:47
- 우선순위 큐에서 cmp 구조체에서 operator() 연산자 오버로딩을 통해 사용가능하다. * 반환 값이 true 이면, swap 한다. #include #include #include #include #include #include #include #include #include using namespace std; int N; typedef struct yx { int y; int x; } yx; struct cmp { bool operator()(yx a, yx b) { if (a.y == b.y) { return a.x > b.x; } else { return a.y > b.y; } } }; priority_queue q; int main() { ios_base::sync_with_stdio(..
-
[일일 1 코테] 대충 한달쯤? 회고.알고리즘 2023. 12. 12. 22:25
- 회고 푼 문제들을 매 번 Tistory에 정리하기 힘들어서 Git 잔디를 채울 겸, 친구랑 하루에 한 문제씩 풀기로 하였다. 원래는 Python으로 프로그래머스를 주로 풀었지만, 취업 준비할 겸, C++에 익숙해질 겸 C++로 백준 위주로 풀이 중이다. (아직은 주로 실버 ~ 위주로 풀이 중, 그리고 solved 점수 올리는 맛이 꽤 재밌다. 처음에는 유지할 수 있을까 걱정됐지만, 요즘은 풀이 속도도 빨라졌고, 익숙해져서 할만하다. 가끔 늦게 퇴근하면 숙제가 되긴하지만... 실은 이 글도 슬슬 몇일 쯤 지속했나 봤다가 한 달 쯤 됐길래 작성중이다. 그래프를 보니 11/14부터 시작 했었나 보다. 늦게 퇴근하게 되면 공부보다 1 문제를 풀이하는 것이 먼저가 될 때가 있는 단점이 있긴하지만, 그래도 안하..