C++

1. 문제 설명 링크 : https://www.acmicpc.net/problem/6593 6593번: 상범 빌딩 당신은 상범 빌딩에 갇히고 말았다. 여기서 탈출하는 가장 빠른 길은 무엇일까? 상범 빌딩은 각 변의 길이가 1인 정육면체(단위 정육면체)로 이루어져있다. 각 정육면체는 금으로 이루어져 있어 www.acmicpc.net 2. 풀이 과정 문제 해결의 흐름 7569 토마토 문제와 매우 비슷한듯? 무한 루프를 통해 0 0 0이 입력될 때까지 입력 받도록 하자 ! (단, 무한 루프를 통해 여러 테스트케이스를 거치기에 입력 받을 때 초기화는 필수다!) 시작 지점부터 6방향을 탐색하며 방문하지 않았고 막힌 곳(#)이 아니라면 이동하자! (막힌 곳이 아니라면 도착지점 E이거나 지나갈 수 있는 곳 .이다) ..
1. 문제 설명 링크 : https://www.acmicpc.net/problem/1303 1303번: 전쟁 - 전투 첫째 줄에는 전쟁터의 가로 크기 N, 세로 크기 M(1 ≤ N, M ≤ 100)이 주어진다. 그 다음 두 번째 줄에서 M+1번째 줄에는 각각 (X, Y)에 있는 병사들의 옷색이 띄어쓰기 없이 주어진다. 모든 자리에는 www.acmicpc.net 2. 풀이 과정 문제 해결의 흐름 입력 받은 배열을 이중for문을 돌며 각 국의 국력을 구한다. bfs를 통해 각 국의 병사 수를 구해 국력을 계산하자. 나의 코드 #include #include #include #include using namespace std; int N, M; char battleground[101][101]; bool vi..
1. 문제 설명 링크 : https://www.acmicpc.net/problem/17086 17086번: 아기 상어 2 첫째 줄에 공간의 크기 N과 M(2 ≤ N, M ≤ 50)이 주어진다. 둘째 줄부터 N개의 줄에 공간의 상태가 주어지며, 0은 빈 칸, 1은 아기 상어가 있는 칸이다. 빈 칸과 상어의 수가 각각 한 개 이상인 입력만 www.acmicpc.net 2. 풀이 과정 문제 해결의 흐름 안전거리 : 현재 위치한 칸과 가장 가까운 아기 상어와의 거리 아기상어(1)를 찾는 것이 목표이기에 대각선 방향까지 포함한 8방향 탐색을 이어나가며 아기 상어를 찾자! 나의 코드 #include #include using namespace std; int N, M; int shark_map[51][51] = {..
1. 문제 설명 링크 : https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 2. 풀이 과정 문제 해결의 흐름 맵의 정보를 입력 받은 배열(land)를 기준으로 시작점은 land[0][0], 도착점은 land[N-1][M-1]일 것이다. 벽을 한 번만 부술 수 있으므로 다음의 기준으로 bfs를 구현하면 어떨까? (1) 다음 칸이 벽이고 벽을 부술 수 있다면? 벽을 뚫고 방문처리 (2) 다음 칸이 벽이 아니고 아직 방문하지 ..
1. 문제 설명 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/250136 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 과정 문제 해결의 흐름 (bfs 이용) 석유 지도 (land)를 탐색하며 석유를 찾는다. 석유를 찾았다면 bfs를 통해 석유 덩어리의 크기를 파악하고 해당 석유 덩어리를 캘 수 있는 모든 column값을 집합(set)에 저장한다. (column값들의 중복을 제거하기 위해 집합에 저장함!) bfs 탐색이 끝났다면 column 위치 중 어느 위치에서 시추하는 것이..
1. 문제 설명 링크 : https://www.acmicpc.net/problem/9205 9205번: 맥주 마시면서 걸어가기 송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. www.acmicpc.net 2. 풀이 과정 문제 해결의 흐름 맥주가 20개 있는 상태(full)에서는 거리가 1000미터 이하인 곳까지 도착할 수 있다. 편의점이 왜 n개가 주어졌을까...?? 사실 페스티벌에서 가장 가까운 편의점을 bfs로 찾아 그 편의점과 페스티벌 사이의 거리가 1000 미터 이하인지 확인하는 문제 아닐까? 나의 코드 // // Created by 태윤맥북 on 4/15/2..
1. 문제 설명 링크 : https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net bfs 개념을 배우고 난 뒤 첫 문제였습니다 ㅎ. 입문용으로 최고의 문제인 듯합니다. 2. 풀이 과정 문제 해결의 흐름 강호의 위치 S층에서 꼭대기 층인 F층 사이를 오르락(U) 내리락(D)하기. 이동하며 방문한 층은 방문처리한다. 이때, 이동한 층이 스타트링크가 위치한 곳(G)이라면 결과값을 제출하자. 나의 코드 #include #include using namespace std; ..
태윤이
'C++' 태그의 글 목록 (3 Page)