본문 바로가기

BFS21

[백준][dfs / bfs] 1260 DFS와 BFS NodeJs구현 목차https://www.acmicpc.net/problem/1260 문제 NodeJs 구현 시 주의할 점아래와 같이 인접리스트를 초기화해야 typeError가 나지 않는다.let vector = Array.from({ length: 10003 }, () => []); || 연산자를 통해 undefined가 뜨지 않도록 막아 준다.for (let i = 0; i  sort안에 정확히 명시 해주어야 오류가 안난다. 출력은 잘되더라도 백준에서는 틀리게 된다..for(let i=1; i a-b);} 코드 구현const input = require("fs") .readFileSync("../test.txt", "utf-8") .trim() .split("\n");let order = input[0].sp.. 2024. 10. 14.
[비트마스킹][bfs] 2234 성곽 c++구현 목차https://www.acmicpc.net/problem/2234문제 문제 구현 방향비트 마스킹을 통해 bfs로 탐색하는 식으로 풀었다. 꼭 bfs가 아니어도 dfs로도 풀 수 있다.  문제 구현 시 주의점이차원 배열에서는 아래쪽이 북쪽 방향이니 주의해야 한다.감이 안잡힌다면 일단 완전탐색이 최고인 것 같다. 코드 구현#include#include#include#include#include#include#includeusing namespace std;//주의 이차원 배열은 아래쪽이 북쪽 방향int dx[4] = { -1, 0, 1, 0 };int dy[4] = { 0, -1, 0, 1 };int M, N;int board[51][51] = { 0 };int visit[51][51] = { 0 };i.. 2024. 7. 16.
[백준][비트마스킹] 17471 게리맨더링 c++구현 목차https://www.acmicpc.net/problem/17471문제 코드 구현 방향비트 마스킹을 통해 나누어지는 경우를 모두 구하고 조건을 만족하는지 체크하여 최솟값을 갱신하였다.(영역을 색칠한는 방식으로 하면 코드를 더 간결하게 작성할 수 있었을 것 같다...) 코드 구현#include#include#include#include#include#includeusing namespace std;int N;vector person;vector adj[11];int visit[20] = { 0 };int Gap = 999;vector a;vectorb;//안에 있는지 체크 함수int incheck(int n, vector& c) { for (int i = 0; i q; q.push(start); vi.. 2024. 7. 12.
[백준][bfs] 3197 백조의 호수 c++ 구현 목차https://www.acmicpc.net/problem/3197문제 문제 구현 방향 두개의 큐를 이용해서 구현했고 두번의 bfs를 차례로 실행하여 탐색하는 방식으로 진행했다. 물의 녹음 -> 백조의 이동이것을 풀기 전에 아래 문제를 먼저 풀어보면 감이 잡힌다.(매우 유사하게 풀 수 있다)https://be-senior-developer.tistory.com/123 [백준][bfs] 14497 주난의 난 (두개의 큐를 이용한 bfs) c++ 추가 구현목차 참고: dfs와 bfs를 혼용한 방식 https://be-senior-developer.tistory.com/121  [백준][bfs] 14497 주난의 난 c++ 구현목차https://www.acmicpc.net/problem/14497문제 문제 .. 2024. 7. 4.
728x90