[백준 18126번] 너구리 구구 (C++)
문제링크 : https://www.acmicpc.net/problem/18126 18126번: 너구리 구구 텔레토비 동산에 사는 너구리 구구는 입구, 거실, 주방, 안방, 공부방, 운동실, 음악실, 음식 창고 등 N개의 방을 가지고 있다. 입구를 포함한 모든 방은 1부터 N까지의 번호가 있고, 입구는 1번이 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const ll MAX = 10000000001*5000; //최대값 + 1 int N, A, B; ll C, result; vectorv[5001]; ll dist[5001]; void bfs() { dist[1]=0; //시작점 queue q; ..
[백준 2194번] 유닛 이동시키기 (C++)
문제링크 : https://www.acmicpc.net/problem/2194 2194번: 유닛 이동시키기 첫째 줄에 다섯 개의 정수 N, M(1 ≤ N, M ≤ 500), A, B(1 ≤ A, B ≤ 10), K(0 ≤ K ≤ 100,000)가 주어진다. 다음 K개의 줄에는 장애물이 설치된 위치(행 번호, 열 번호)가 주어진다. 그 다음 줄에는 시작점의 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N, M, A, B, K; int s1, s2, e1, e2; int dx[] = {1, -1, 0, 0}; int dy[] = {0, 0, 1,..
[백준 18404번] 현명한 나이트 (C++)
문제링크 : https://www.acmicpc.net/problem/18404 18404번: 현명한 나이트 첫째 줄에 N과 M이 공백을 기준으로 구분되어 자연수로 주어진다. (1 ≤ N ≤ 500, 1 ≤ M ≤ 1,000) 둘째 줄에 나이트의 위치 (X, Y)를 의미하는 X와 Y가 공백을 기준으로 구분되어 자연수로 주어진다. ( www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int N, M, X, Y, A, B; int dx[] = {-2,-2,-1,-1, 1,1, 2,2}; //나이트 이동 방향 int dy[] = {-1, 1,-2, 2,-2,2..