마법사 상어와 파이어볼 C++
https://www.acmicpc.net/problem/20056 20056번: 마법사 상어와 파이어볼 첫째 줄에 N, M, K가 주어진다. 둘째 줄부터 M개의 줄에 파이어볼의 정보가 한 줄에 하나씩 주어진다. 파이어볼의 정보는 다섯 정수 ri, ci, mi, si, di로 이루어져 있다. 서로 다른 두 파이어볼의 위치 www.acmicpc.net #include #include using namespace std; const int MAX = 51; vector map[MAX][MAX]; int n, m, k; struct fireball { int r, c, m, s, d; }; vector fb; struct MOVE { int x, y; }; MOVE mv[8] = { {-1,0}, {-1,1}..
2021. 4. 13.
낚시왕 C++
https://www.acmicpc.net/problem/17143 17143번: 낚시왕 낚시왕이 상어 낚시를 하는 곳은 크기가 R×C인 격자판으로 나타낼 수 있다. 격자판의 각 칸은 (r, c)로 나타낼 수 있다. r은 행, c는 열이고, (R, C)는 아래 그림에서 가장 오른쪽 아래에 있는 칸이다. www.acmicpc.net #include #include #include using namespace std; const int MAX = 101; int r, c, m; struct sk { int s, d, z, exist; }; vector shark[MAX][MAX]; int answer = 0; int loc = 1; struct MOVE { int x, y; }; MOVE mv[5] = { ..
2021. 4. 11.
마법사 상어와 토네이도 C++
https://www.acmicpc.net/problem/20057 20057번: 마법사 상어와 토네이도 마법사 상어가 토네이도를 배웠고, 오늘은 토네이도를 크기가 N×N인 격자로 나누어진 모래밭에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c열을 의미하고, A[r][c]는 (r, c)에 있는 모래의 양을 www.acmicpc.net #include using namespace std; const int MAX = 501; int n; int answer = 0; int soil[MAX][MAX]; struct MOVE { int x, y; }; MOVE mv[4] = { {0,-1}, {1,0}, {0,1}, {-1,0} }; //왼쪽, 아래쪽, 오른쪽, 위쪽 int wind_x[4][10] ..
2021. 4. 6.
새로운 게임 2 C++
https://www.acmicpc.net/problem/17837 17837번: 새로운 게임 2 재현이는 주변을 살펴보던 중 체스판과 말을 이용해서 새로운 게임을 만들기로 했다. 새로운 게임은 크기가 N×N인 체스판에서 진행되고, 사용하는 말의 개수는 K개이다. 말은 원판모양이고, 하 www.acmicpc.net #include #include #include using namespace std; int n, k; int map[13][13]; // 0:흰색, 1:빨간색, 2:파란색 struct H { int x, y, dir; }; // 1:오, 2:왼, 3:위, 4:아래 vector horse; vector num[13][13]; // 칸마다 말의 개수 저장 struct MOVE { int x, y..
2021. 3. 19.