백준 11403번: 경로 찾기
·
c++/백준
문제 설명 1. 가중치가 없는 그래프가 주어진다 2. 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램 출력 ex) 3 0 1 0 0 0 1 1 0 0 일때 1에서 2로가는 경로가있고 2에서 3으로가는 경로가 있고 3에서 1로가는 경로가 있다는 뜻. 알고리즘 플로이드 와샬 알고리즘을 통해 쉽게 구현 하였다 . 코드 #include #include using namespace std; int main() { cin.tie(NULL); ios::sync_with_stdio(false); int N,map[101][101]; cin >> N; for (int i = 0; i > map[i..
백준 11559번: Puyo Puyo
·
c++/백준
문제설명 1. 주어진 뿌요뿌요 룰에따라 몇콤보가 나오는지 출력하면됨 . 알고리즘 1. 뿌요를 밑으로 내려주는 함수 down() 설계 2. 뿌요가 4개이상붙어있는지 확인하는 dfs_size함수 설계 - dfs 를 이용하여 같은 문자일때만 재귀 호출 하였고 마지막에 깊이를 return 하였다. 3. 뿌요가 4개이상일때 터트리는 함수 설계. - dfs_size 함수를 이용하여 뿌요의갯수가 4개이상임을 확인하였을때 뿌요를 터트렸다 - 그리고 뿌요가 터지면 while 문을 한번더 돌게 하는 논리형 변수를 수정하였다. 코드 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 31 32 33 34 35 36 37 38 39 ..
백준 1010번 : 다리 놓기
·
c++/백준
문제 링크 : https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 M; if (N * 2
백준 1520번: 내리막길
·
c++/백준
문제 링크 : https://www.acmicpc.net/problem/1520 1520번: 내리막 길 첫째 줄에는 지도의 세로의 크기 M과 가로의 크기 N이 빈칸을 사이에 두고 주어진다. 이어 다음 M개 줄에 걸쳐 한 줄에 N개씩 위에서부터 차례로 각 지점의 높이가 빈 칸을 사이에 두고 주어진다. M과 N은 각각 500이하의 자연수이고, 각 지점의 높이는 10000이하의 자연수이다. www.acmicpc.net 문제 설명 1. N x M 배열에 10000이하의 자연수가 채워져 입력. 2. (0,0) 에서 (N-1,M-1) 까지 이동하는데 이동할 때 수가 높은곳에서 낮은곳으로만 이동. 3. 이동할 수있는 경우의 수 출력. 알고리즘 1. DP 와 DFS 를 같이 이용한문제 (개인적으로 상당히 좋은문제라고 ..
백준 2146번 : 다리 만들기
·
c++/백준
문제 링크 : https://www.acmicpc.net/problem/2146 2146번: 다리 만들기 여러 섬으로 이루어진 나라가 있다. 이 나라의 대통령은 섬을 잇는 다리를 만들겠다는 공약으로 인기몰이를 해 당선될 수 있었다. 하지만 막상 대통령에 취임하자, 다리를 놓는다는 것이 아깝다는 생각을 하게 되었다. 그래서 그는, 생색내는 식으로 한 섬과 다른 섬을 잇는 다리 하나만을 만들기로 하였고, 그 또한 다리를 가장 짧게 하여 돈을 아끼려 하였다. 이 나라는 N×N크기의 이차원 평면상에 존재한다. 이 나라는 여러 섬으로 이루어져 있으며, 섬이란 동서남북 www.acmicpc.net 문제 설명 1. N x N 행렬에 0과 1로 이루어진 배열이 주어짐. 2. 1은 육지를 의미하고 0은 바다를 의미. 3..
프로그래머스 : 카펫
·
c++/프로그래머스
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 카펫의 가장자리의 갯수와 안쪽 의 갯수가 각각주어질때 카펫의 사이즈를 return 하면됨. 알고리즘 1. 가장자리의 갯수와 안쪽 갯수를 더하여 넓이를 구함. 3번예제) 24 + 24 = 48 2. 넒이를 통해 가능한 카펫 사이즈 경우의 수를 추려냄 3번예제 ) 넓이 : 48 -> (가로 :12 ,세로 4), (가로 :8 ,세로 6) , (가로 :16 ,세로 3) 여기서 세로의 길이는 ..
ariz1623
코딩의 숲