일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- react hook
- react-router-dom
- SwiftUI Font
- CSS
- LazyVGrid
- GridItem
- @observedobject 프로퍼티 래퍼
- 세로모드끄기
- @published 프로퍼티 래퍼
- 가로모드끄기
- zustand
- LazyHGrid
- react상태관리라이브러리
- 비동기함수
- 블로그업로드확인
- featured-sliced-design
- @environmentobject 프로퍼티 래퍼
- 페이지이동함수
- 페이지전환
- 상단 빈공간 제거
- 리렌더링최적화
- BFS
- 동기 함수 내에서 비동기 함수 호출
- 리액트최적화
- C++
- navigationBar 숨기기
- 반응형 css
- 컴퓨터네트워크
- zustand란
- react fsd
- Today
- Total
목록BOJ_C++_PS (72)
leebaek
문제 울타리 안의 양과 늑대의 수를 비교하여 싸움을 붙인 후, 살아있는 양과 늑대의 수를 구하는 문제 생각 울타리 안 영역을 그룹핑해서 양 수와 늑대수 구한 뒤, 수를 비교해봐야겠다 생각함 처음 코드가 예시 답은 다 나오는데 틀렸습니다만 나옴 .. 진짜 왜 틀렸는지 모르겠음. #include #include #include using namespace std; #define X first #define Y second int dx[4] = {1, -1, 0, 0}; int dy[4] = {0, 0, 1, -1}; int R, C, cnt=0, scnt=0, wcnt=0; string board[251]; int vis[251][251]; int o[251], v[251]; void BFS() { queu..
문제 섬과 섬을 잇는 다리 중 가장 짧은 다리의 길이를 구하는 문제 -두개 이상의 섬이 주어짐 -땅은 1, 바다는 0으로 표시됨 생각 섬마다 번호 표시해서 그룹화 시켜야겠다 생각 섬에서 다른 섬까지의 거리 표시 섬 개수만큼 각각 BFS 해서 짧은 거리 저장 -30에서 틀렸습니다 -> 최솟값 초기화를 100으로 해놨었음 -80에서 틀렸습니다 -> 4번 과정 안에 5~ 다 넣어서 했었음 => 번호가 이상하게 매겨짐 => 처음에 몽땅 섬을 넣어줘야 함 ! 문제풀이 1.땅을 찾아 섬번호를 매겨줘야함 ( Group ) 1-1.map에서 섬번호가 없는 땅이 나오면 BFS 탐색 1-2.상하좌우에 인접한 섬번호가 없는 땅이 나오면, 섬번호 저장 + 큐에 푸쉬 2.map칸을 vis칸의 값으로 변경해줌 3.각 섬마다 가장..
문제 R 정점부터 시작해서 탐색하였을 때, 1부터 N의 방문된 순서를 출력하는 문제 -인접 정점은 내림차순으로 정렬됨 생각 벡터에 정점 간선 정보 넣고, 몇번째 순서가 오는지 확인 벡터 정렬을 어떻게 시켜야할지 몰랐음 sort(시작 주소, 끝주소, 조건) 문제풀이 1.양방향 간선이므로, u, v를 서로 푸쉬해줌 2.1부터 N까지 arr[i]의 정점들을 내림차순 해줌 3.정점 R부터 BFS 탐색 4.처음 R 정점은 방문순서 vis = 1 ( cnt = 1 ) 5.큐가 빌 때까지 pop 5-1.큐에서 나온 원소의 방문순서는 vis = cnt+1 5-2.큐와 인접한 방문하지 않은 정점 큐에 푸쉬 6.1부터 N 정점의 vis 출력 코드 #include #include #include #include #inclu..
문제 공기에 둘러싸인 치즈가 녹아 없어질 때까지 걸리는 최소 시간을 구하는 문제 -치즈에 둘러싸인 구멍으로는 공기가 통하지 않음 생각 공기를 모두 큐에 푸쉬해서 공기와 맞닿은 치즈 녹이기 녹은 치즈 자리에 0 채우기 치즈 개수가 0이 될때까지 반복문 돌리기 문제풀이 1.전체 치즈 개수 세기 2.치즈 개수가 0일 될 때까지 BFS 탐색 ( 탐색할 때 마다, vis 초기화 ) 3.배열의 외곽선을 모두 큐에 푸쉬 + 방문표시 ( 항상 공기가 있는 자리 ) 4.기준칸의 상하좌우를 탐색 4-1.공기가 있으면, 큐에 푸쉬 + 방문표시 4-2.치즈가 있으면, 치즈를 녹임 + 방문표시 ( -> 치즈 배열칸에 0 대입 ) 4-3. cnt 값 반환 ( 탐색 전, 이전의 cnt 값을 prev_cnt 저장해둠 ) 5.BFS ..