목록전체 글 (267)
Deff_Dev
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr이 문제는 n * m 크기의 0(벽), 1(길)로 이루어진 Map에서 (1,1) 부터 (n,m)까지의 최단 거리를 구하는 문제이다.풀이(0,0) 부터 (n-1,m-1)까지 탐색하는 걸로 풀이했다.BFS를 이용하여 (n-1,m-1)까지의 각 타일 별 최단 거리를 구했다.#include#include#include using namespace std;int dx [4] = {1,-1,0,0};int dy [4] = {0,0,1,-1};int BFS(vector > maps){ int m = maps[0]...
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 이 문제는 간선으로 이어진 그래프(네트워크)의 갯수를 구하는 문제이다.풀이BFS를 이용하여 각 노드들을 탐색하고 간선으로 이어지지 않은 정점의 갯수를 구하는 방법으로 풀이했다.#include #include #include using namespace std;bool visited[200] = {false,};void BFS(vector> computers , int startNode){ queue q; q.push(startNode); visited[startNode] = t..
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 미 문제는 입력 받은 숫자들을 + - 하여 목표 숫자를 만들 수 있는 경우의 수를 반환하는 문제이다.풀이 재귀 함수를 사용해 모든 경우의 수를 탐색하고, 마지막 숫자에 도달했을 때 목표 숫자와 일치하는 경우 answer 값을 증가시키는 방식으로 문제를 풀이했다.#include #include using namespace std;// https://school.programmers.co.kr/learn/courses/30/lessons/43165#int answer = 0;void Solution(int cu..

문제https://www.acmicpc.net/problem/1012풀이BFS를 이용하여 그래프를 탐색하고 간선으로 이어져 있는 정점 갯수를 구했다.#include #include #include using namespace std;int m, n, k;int dx[4] = { 1,-1,0,0 };int dy[4] = { 0,0,1,-1 };vector answer;void BFS(int map [50][50], bool visited [50][50], vector > vec) { int count = 0; for (int i = 0; i > q; q.push({ vec[i].first ,vec[i].second }); visited[vec[i].first][vec[i].second] = tru..

문제https://www.acmicpc.net/problem/7576풀이BFS를 통해 익은 토마토(1) 주변 덜 익은 토마토(0)를 탐색하고 익은 토마토(1)로 바꿔준다. BFS가 끝난 후, 전체 맵을 탐색하고 덜 익은 토마토(0)가 있다면 -1 출력하고,덜 익은 토마토(0)가 없다면 맵에서 가장 큰 값을 출력한다. #include #include #include // https://www.acmicpc.net/problem/7576using namespace std;int m, n;int dx[4] = { 1,-1,0,0 };int dy[4] = { 0,0,1,-1 };vector> map;queue > q;void BFS(){ while (!q.empty()) { pair front = q.fron..