본문 바로가기
728x90

baekjoon4

[백준 && SW] gold5/D3 N-Queen 백준과 SW Expert Academy 양쪽에 있는 문제이다. 수업에서도 들었던 기억이 있다. 더보기 my full code // 같은 행과 열에 하나씩 들어갈 수 있음 // 대각선인지만 확인하면됨. 같은 x좌표끼리의 차이와 y좌표끼리의 차이가 같으면 대각선에 존재 // 모든 행이 꽉찼으면 끝 #include #include using namespace std; int N, answer; vector chess(14); // 각 원소는 n번째 행의 어느 column에 chess가 놓여있는지를 나타내고있다. vector columns(14, false); void dfs(int row = 0) { // row번째 행에 넣을 차례 if (row == N) { answer++; return; } for (in.. 2022. 5. 27.
[백준/baekjoon] Silver1 2667. 단지번호붙이기 DFS 연습용으로 들어갔는데 예전에 BFS로 풀었던 것이랑 비슷한 문제(👇)여서 https://jolly-note.tistory.com/43 [programmers] Lv.2 카카오프렌즈 컬러링북(c++) 더보기 #include #include using namespace std; vector > visit; int nb_area; vector x_dir; vector y_dir; int find_area(int i, int j, vector > picture){ nb_area++; queue > que; que.push({i, j}); visit[.. jolly-note.tistory.com DFS, BFS 두 방법으로 풀어봤다. 더보기 #include #include #include #include .. 2022. 5. 27.
[백준/baekjoon] Silver3 2606. 바이러스 DFS 연습 2일차 DFS 재밌네 더보기 #include #include using namespace std; vector visited; vector adj; int cnt = 0; void dfs(int current) { visited[current] = true; for (int a : adj[current]) { if (visited[a]) continue; cnt++; dfs(a); } } int main() { int computer, connected; cin >> computer >> connected; adj = vector(computer+1); visited = vector(computer + 1); int x, y; for (int i = 0; i < connected; i++) .. 2022. 5. 23.
[백준/baekjoon] Silver4 1388. 바닥 장식 더보기 #include #include using namespace std; int x, y; vector map; vector visited; int dfs(int i, int j) { visited[i][j] = true; if (map[i][j] == '|') { if (i + 1 == x || map[i + 1][j] != '|') return 1; return dfs(i + 1, j); } else if (map[i][j] == '-') { if (j + 1 == y || map[i][j + 1] != '-') return 1; return dfs(i, j + 1); } return 0; } int main() { cin >> x >> y; char tile; map = vector(x, vec.. 2022. 5. 22.
728x90