백준 10026번 - 적록색약
프로그래밍 공부/코딩테스트 준비2022. 9. 25. 21:51백준 10026번 - 적록색약

10026번: 적록색약 (acmicpc.net) 크기가 N x N인 그리드 안에서 구역이 몇개있는지 찾는 문제다. 근데 일반사람이 인식하는 구역과 'R'과 'G'가 똑같이 보이는 적록색약을 가진 사람이 보는 구역 둘 다 출력해야한다. #include #include #include using namespace std; string Grid[100]; bool Color[100][100]; bool NoColor[100][100]; int dx[4] = {1,-1,0,0}; int dy[4] = {0,0,1,-1}; int n; int cnt; int main() { ios::sync_with_stdio(0); cin.tie(0); stack S; cin >> n; for (int i = 0; i < n;..

백준 7562번 - 나이트의 이동
프로그래밍 공부/코딩테스트 준비2022. 9. 25. 20:39백준 7562번 - 나이트의 이동

7562번: 나이트의 이동 (acmicpc.net) 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 체스판에서 나이트가 갈 수 있는 위치는 8곳이다. 첫 줄에 테스트 케이스의 수가 주어지고 , 테스트 케이스마다 나이트의 현재위치에서 이동 할 칸까지 최소 몇번만에 갈수있는지를 출력하면 된다. #include #include #include using namespace std; //거리를 담을 배열 int dist[300][300]; //상하 좌우 탐색을 도와주는 배열 int dx[8] = { -2,-2,2,2,-..

백준 1012번 - 유기농 배추
프로그래밍 공부/코딩테스트 준비2022. 9. 25. 18:04백준 1012번 - 유기농 배추

1012번: 유기농 배추 (acmicpc.net) 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 한나는 배추 농사를 하는데, 농약을 쓰지 않고 배추를 잘 재배하기 위해서는 해충으로 부터 배추를 보호해야한다. 배추흰지렁이가 해충을 잡아먹기 때문에 해충으로부터 배추를 도와주는데, 이 해충은 상하좌우 네방향에 다른 배추가 있으면 이동을할 수 있다. 하지만 안타깝게도 한나의 밭은 고르지 못해서 배추가 군데군데 심어져있는데 .. 이 배추들을 해충으로부터 보호하기위해 필요한 배추흰지렁이의 최소의 수를 출력하는 문제다. #inclu..

백준 1697번 - 숨바꼭질
프로그래밍 공부/코딩테스트 준비2022. 9. 24. 13:52백준 1697번 - 숨바꼭질

수빈이와 동생이 숨바꼭질을 한다. 수빈이는 1초에 X-1 , X+1의 위치로 이동할 수 있고, 심지어 1초만에 2*X의 위치로도 이동이 가능하다 ㄷㄷ 입력으로 수빈이의 위치와 동생의 위치가 주어지는데, 수빈이가 몇 초 만에 동생을 잡을 수 있을지 출력하는 문제다. #include #include #include using namespace std; //숨바꼭질 할 배열 int Spot[100001]; //수빈이 위치 int n; //동생 위치 int k; int dx[3] = { -1,1,2 }; int main() { ios::sync_with_stdio(0); cin.tie(0); cin >> n >> k; //수빈이와 동생의 위치가 같으면 0 출력 후 리턴 if (n == k) { cout 1000..

백준 4179번 - 불!
프로그래밍 공부/코딩테스트 준비2022. 9. 24. 04:07백준 4179번 - 불!

4179번: 불! (acmicpc.net) 미로에서 일하는 지훈이에게 미로에 불이나는 상황이 발생한다. 입력 첫줄에 미로의 행(R) / 미로의 열 (C) 가 주어진다. ' # ' - 벽 ' . ' - 지나갈 수 있는 공간 ' J ' - 지훈이의 초기 위치 ' F ' - 불이 난 공간 불은 매 분마다 한칸씩 네 방향(상,하,좌,우)으로 확산되며, 지훈이와 붙은 벽을 통과하지 못한다. 지훈이가 탈출 가능하다면 가장 빠른 탈출시간을, 탈출을 못하고 타죽는다면 IMPOSSIBLE을 출력하면 된다. #include #include #include using namespace std; //미로 string maze[1001]; //불이 옮겨가는 시간 int Ftime[1001][1001]; //지훈이가 이동하는 시..

#6 코테준비 - BFS(Breadth First Search)
프로그래밍 공부/코딩테스트 준비2022. 9. 23. 13:09#6 코테준비 - BFS(Breadth First Search)

BFS(Breadth First Search) 한 노드에서 시작해서 인접한 노드를 먼저 탐색하는 그래프 탐색 알고리즘이다. 코테에서는 다차원 배열에서 각 칸을 방문할 때 너비 우선으로 방문하는 알고리즘이라고 생각하면 된다. C++ STL - pair BFS 문제를 풀때는 Queue와 pair를 사용하기 때문에 pair를 알아두면 좋다. int main() { pair P; P = make_pair(3, 5); cout = width ? max : width; } } cout > m; //미로의 크기 //한줄로 입력받음 for (int i = 0; i > board[i]; //미로의 행을 순서대로 돌며 -1로 초기화 시켜줌 for (int j = 0; j < n; j++) fil..

image