일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- N과M
- stoi
- DP
- 알고리즘
- Sort
- int
- Set
- 우선순위큐
- 다이나믹프로그래밍
- 에라토스테네스의 체
- vector
- 정렬
- priority_queue
- 유클리드호제법
- 문자열
- map
- 백트래킹
- 최소공배수
- 오블완
- BFS
- 분할정복
- 배열
- 백준
- 티스토리챌린지
- 그래프
- 이분탐색
- 프로그래머스
- 깊이우선탐색
- DFS
- C++
- Today
- Total
목록오블완 (7)
안녕 세상아,
https://www.acmicpc.net/problem/1260 BFS와 DFS의 기본적인 문제이다. 템플릿으로 사용해도 될듯..값을 입력할 때 양방향 간선으로 고려해야한다. 또한, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문 한다는 조건을 생각해서 정렬한다. #include #include #include #include #include using namespace std;int n, m, v;bool isVisited[1001] = { false };vector graph[1001];void reset() { for (int i = 1; i q; q.push(start); isVisited[start] = true; while (!q.empty()) { int ..
https://www.codetree.ai/missions/5/problems/place-more-than-3-ones/explanation 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.aidx, dy 사용해서 푸는 문제 연습중 #include using namespace std;int main() { int dx[4] = { 0,1,0,-1 }; int dy[4] = { 1,0,-1,0 }; int n; cin >> n; int arr[101][101]; for (int i = 0; i > arr[i][j]; ..
https://www.acmicpc.net/problem/2178 전형적인 bfs 문제이다. 1. graph, q는 bfs에서 쓰기 위해 정의한 벡터와 큐다.2. 입력값 넣을 2차원 벡터 정의3. 상하좌우 배열 dx, dy 선언4. 입력값 string으로 받아서 쪼개서 큐에 넣기5. bfs로 풀기#include #include #include #include using namespace std;int main() { int n, m; cin >> n >> m; //문제 해결을 위한 벡터, 큐 vector>graph(n, vector(m, 0)); queue> q; //입력값 넣을 벡터 vector> maps(n, vector(m, 0)); int dx[4] = { 0,0,-1,1 }; int dy[..
https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krbfs 문제이다. vector> graph(n, vector(m,0));--> 이 구문은 이미 왔던 길인지 확인하기 위해 2차원 벡터를 정의하고 모든 행열을 0으로 초기화한 것이다. 사실 bool isVisited로 구분할 수 있지 않을까 했지만 그렇게 되면 누적합을 구할 수 없게 돼서 다른 벡터를 하나 더 사용해야한다. #include#include using namespace std;int solution(vector > maps){ ..
BFS (너비 우선 탐색)개념:BFS는 시작 노드에서부터 가까운 노드부터 차례대로 탐색하는 방식이다.주로 최단 경로를 찾는 문제나, 레벨 순서 탐색이 필요한 문제에서 유용하게 사용된다.너비 우선 탐색에서는 큐 (Queue) 자료 구조를 사용하여, 먼저 방문한 노드를 기준으로 탐색을 진행한다.동작 원리:초기화: 시작 노드를 큐에 넣고, 방문 표시를 한다.큐에서 노드를 꺼내며 탐색: 큐에서 노드를 하나씩 꺼내며, 해당 노드와 인접한 노드를 모두 확인한다.인접 노드를 큐에 추가: 방문하지 않은 인접 노드를 큐에 추가하고, 방문 표시를 한다.반복: 큐가 빌 때까지 2번과 3번 과정을 반복한다.BFS 알고리즘의 특징:경로 길이 최적화: 가중치가 동일한 그래프에서 최단 거리를 찾을 수 있다.노드의 깊이 별 탐색: ..
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&contestProbId=AV7GLXqKAWYDFAXB&categoryId=AV7GLXqKAWYDFAXB&categoryType=CODE&problemTitle=&orderBy=INQUERY_COUNT&selectCodeLang=CCPP&select-1=3&pageSize=10&pageIndex=1 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com뭐 이런 이상한 규칙이 다 있담..규칙 생각하는데 한참 걸렸다. 더 간단한 방법도 있겠지만 나는 mid값 기준으로 위 아래로 나눠서 풀..
https://swexpertacademy.com/main/solvingProblem/solvingProblem.do?contestProbId=AV15FZuqAL4CFAYD&isPostMethod=Y&do_url=%2Fmain%2FsolvingProblem%2FsolvingProblem.do&categoryId=AV15FZuqAL4CFAYD&categoryType=CODE&&&&& SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com문제를 풀기 위해서는 문제를 이해해야된다. 이해가 잘 안돼서 한참 읽었던 것 같다. 간단하게 설명하면 암호화된 암호문을 숫자로 바꿔서 10의 배수가 맞는지 검증하면 된다. 문제에서 0부터 ..