본문 바로가기

백준 알고리즘/시뮬레이션43

거북이 C++ https://www.acmicpc.net/problem/8911 8911번: 거북이 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 컨트롤 프로그램이 주어진다. 프로그램은 항상 문제의 설명에 나와있는 네가지 명령으로만 이루어져 www.acmicpc.net #include #include using namespace std; string cmd; int left_i, left_j, right_i, right_j; int cur_i, cur_j; int cur_dir; // 0:북 1:남 2:동 3:서 int main(void) { int testcase; cin >> testcase; for (int i = 0; i .. 2022. 4. 5.
킹 C++ https://www.acmicpc.net/problem/1063 1063번: 킹 8*8크기의 체스판에 왕이 하나 있다. 킹의 현재 위치가 주어진다. 체스판에서 말의 위치는 다음과 같이 주어진다. 알파벳 하나와 숫자 하나로 이루어져 있는데, 알파벳은 열을 상징하고, 숫자는 www.acmicpc.net #include #include using namespace std; struct MOVE { int x, y; }; MOVE mv[8] = { {1,0}, {-1,0}, {0,-1}, {0,1}, {1,1}, {-1,1}, {1,-1}, {-1,-1} }; pair king; pair stone; int n; int change(char ch) { if (ch == 'A') return 1; else if.. 2022. 3. 8.
캐슬 디펜스 C++ https://www.acmicpc.net/problem/17135 17135번: 캐슬 디펜스 첫째 줄에 격자판 행의 수 N, 열의 수 M, 궁수의 공격 거리 제한 D가 주어진다. 둘째 줄부터 N개의 줄에는 격자판의 상태가 주어진다. 0은 빈 칸, 1은 적이 있는 칸이다. www.acmicpc.net #include #include #include #include #include using namespace std; struct MOVE { int x, y; }; MOVE mv[4] = { {0,-1}, {-1,0}, {0,1} }; const int MAX = 17; int n, m, d; int map[MAX][MAX]; int answer = -1; struct INFO { int x, y, cou.. 2022. 3. 7.
어른 상어 C++ https://www.acmicpc.net/problem/19237 19237번: 어른 상어 첫 줄에는 N, M, k가 주어진다. (2 ≤ N ≤ 20, 2 ≤ M ≤ N2, 1 ≤ k ≤ 1,000) 그 다음 줄부터 N개의 줄에 걸쳐 격자의 모습이 주어진다. 0은 빈칸이고, 0이 아닌 수 x는 x번 상어가 들어있는 칸을 의미 www.acmicpc.net #include #include #include using namespace std; const int MAX = 21; struct MAP_INFO { int num, exist, smell; }; vector map[MAX][MAX]; //상어 넘버, 지금 들어온 애(0:이전, 1:지금), 냄새 int n, m, K; struct MOVE { int.. 2021. 4. 22.