\[문제가 단순해 보이는데 이해하는데 꽤 오랜 시간이 걸렸다..문제는 프로그램이 주어졌을 때, 이 프로그램이 끝나는지 아니면 무한루프에 빠지게 되는지 구하는 것이고, 무한루프에 빠졌을 때는 어느 부분이 무한루프인지를 출력하는 문제다프로그램이 최대로 수행될 수 있는 횟수
\[(문제를 푸는데 벽을 설정하는 아이디어가 떠오르지 않아 모든 코드를 참고했다){동,서,남,북}의 방향을 {0,1,2,3} 으로 설정한다입력 받아야 하는 값에는 온풍기의 좌표와 방향, 벽의 좌표와 벽이 세워진 방향, 온도를 조사해야하는 좌표가 있다온도를 조사해야하는
원판을 한 칸씩 돌릴 때마다 원판의 마지막 값이 가장 앞으로 오고, 앞의 값이 마지막 값으로 간다는 점에서 deque 자료 구조를 이용한다이웃한 원판의 수를 지울 때 bfs, 너비 우선 탐색을 이용하는데 이때 같은 원판 내에서 처음 끝과 마지막 값이 이웃한다는 점을 주
\[물고기는 자신의 위치와 방향을 가지고 있고, 상어에게 잡아먹히면 죽는다. 따라서 위치(y,x), 방향(d), 생존여부(alive)의 정보를 담은 구조체를 만든다맵의 한 칸에는 물고기의 번호 (여러 개 가능), 냄새가 저장된다. 따라서 물고기 번호 vector<
\[문제는 크게 파이어스톰을 크기가 2^L\*2^L인 부분으로 나누어 시계 방향으로 90도로 회전하는 부분, 얼음의 양을 줄이는 부분, 가장 큰 덩어리를 찾는 부분으로 나눈다참고로 비트 연산자 >>은 2의 거듭제곱으로 나누기, <<은 2의 거듭제곱을 곱할 때
\[문제 제목만큼이나 까다로운 문제였다. 특히 좌표를 다루는 게..함수는 크게 T 모양에 따라 blue, green 칸으로 이동하는 함수 moveBlock(t,y,x), Blue칸에 있는 블록이 합쳐지는 mergeBlue(), Green칸에 있는 블록이 합쳐지는 mer
\[참고로봇 청소기가 바라보는 방향은 북(0), 동(1), 남(2), 서(3) 중 하나이다현재 위치를 청소하고 현재 위치에서 현재 방향을 기준으로 왼쪽 부터 탐색한다왼쪽에 청소하지 않은 공간이 있으면 그 방향으로 회전하고 이동하고 위부터 반복한다왼쪽 방향에 청소할 공간
#14499 주사위 굴리기 참고 먼저 이런 형태의 정육각형을 생각해주고 각 변에 index를 지정한다. (제일 윗 면은 0, 아랫면은 5인 형태)