5014 : 스타트링크 (C++)
5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 스위프트 공부좀 해야 허는디 #include #include using namespace std; int stairs[1000001]; bool visit[1000001]; int F, S, G; // 층수, 시작층, 도착층 int upDown[2]; // 위, 아래 queue q; void bfs() { q.push(S); visit[S] = true; while(!q.empty()) { int x = q.front(); q.pop(); if(x == G) { // x가 ..
2021. 3. 7.
3055 : 탈출 (C++)
3055번: 탈출 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제 www.acmicpc.net 푸는데 너무 오래걸렸다. #include #include #include using namespace std; char map[50][50]; bool visit[50][50]; int result[50][50]; queue q; int dx[4] = {1, -1, 0, 0}; int dy[4] = {0, 0, 1, -1}; int R, C; int xS, yS; // 임시 저장공간 큐의 맨 뒤에 S를 넣기 위함 int xR, yR; // 결과값을 위한 임시 저장 공간 결과..
2021. 3. 3.
14940 : 쉬운 최단거리 (C++)
14940번: 쉬운 최단거리 지도의 크기 n과 m이 주어진다. n은 세로의 크기, m은 가로의 크기다.(2 ≤ n ≤ 1000, 2 ≤ m ≤ 1000) 다음 n개의 줄에 m개의 숫자가 주어진다. 0은 갈 수 없는 땅이고 1은 갈 수 있는 땅, 2는 목표지점이 www.acmicpc.net #include #include using namespace std; int map[1000][1000]; bool visit[1000][1000]; int dx[4] = {1, -1, 0, 0}; int dy[4] = {0, 0, 1, -1}; queue q; int n, m; void bfs() { while(!q.empty()) { int x = q.front().first; int y = q.front().sec..
2021. 3. 2.