Category: computer science

0

백준[14891] - 톱니바퀴

문제백준 14891 문제 보기 접근 방법구현 문제다. 어떻게 톱니바퀴를 회전을 시킬지 결정하면 된다. 따라서 rotation 배열을 둬 어떤 방향으로 회전을 할지 저장한다. 그리고 톱니바퀴마다 회전 방향이 결정되면 톱니바퀴를 회전 시킨다.톱니바퀴는 따로 회전을 시키지 않고 12시를 가르키는 인덱스를 바꿔가면서 풀면 실제로 배열을 움직이지 않아돼 더 빠른 시

0

백준[14502] - 연구소

문제백준 14502 문제 보기 접근 방법먼저 벽을 dfs을 활용해 세운 뒤, bfs로 바이러스를 전파시켜 안전 구역을 확인한다. bfs를 한 뒤 이전 맵 상태를 되돌려와야 한다는 것을 주의한다. 코드#include <iostream> #include <queue> #include <vector> #include <utility>

0

백준[14503] - 로봇 청소기

문제백준 14503 문제 보기 접근 방법구현 문제인 것 같다. 현재 방향과 4방향의 방 검사 후 위치를 이동할 때 주의하여 풀면 문제를 풀수 있다. 4방향을 검사하여 빈 방이 있는지 확인. 빈 방이 존재한다면 방향을 바꾸고 방 청소. 빈방이 없다면 후진 실행. 코드#include <iostream> #include <cstring> us

0

백준[14501] - 퇴사

문제백준 14501 문제 보기 접근 방법진료 스케줄이 주어졌을때 선택할 수 있는 경우는 두 가지가 있다. 진료를 하던가 아니면 해당 날짜에 진료를 하지않던가 이렇게 두가지 경우에 대해서 완전 탐색을하면 정답을 출력할 수 있다. 코드#include <iostream> #include <algorithm> using namespace std;

0

백준[14500] - 테트로미노

문제백준 14500 문제 보기 접근 방법각 좌표에서 모든 방향에 대해 dfs 탐색을 진행하면 테트리스의 모양 대로 접근할 수 있다. 하지만 ㅗ 모양은 dfs로는 접근할 수 없는 모양이므로 따로 예외처리를 해주어야 한다. 코드#include <iostream> #include <algorithm> using namespace std; int

0

백준[2805] - 나무 자르기

문제백준 2805 문제 보기 접근 방법절단기의 높이를 조절하면서 내가 필요한 나무 길이보다 더 얻을 경우 절단기 높이를 줄이고 나무의 길이가 짧을 경우 절단기의 높이를 높이는 방식으로 진행한다. 코드#include <iostream> using namespace std; int M, N; int trees[1000001]; int main() {