BOJ 14503 로봇 청소기
·
알고리즘/BOJ
www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 시뮬레이션 문제는 왜 이렇게 말을 복잡하게 하는 걸까.. 이번 문제도 이해는 어렵고 구현은 더 어려웠다. 결국 다른 풀이를 참고해서 풀었다. 구현 문제는 풀고 보면 참 쉬운 것 같다.. 현재 위치를 청소한다. 현재 위치에서 현재 방향을 기준으로 왼쪽 방향부터 차례대로 탐색을 진행한다. 왼쪽 방향에 아직 청소하지 않은 공간이 존재한다면, 그 방향으로 회전한 다음 한 칸을 전진하고 1번부터 진행한다. 왼쪽 방향에..
BOJ 20055 컨베이어 벨트 위의 로봇
·
알고리즘/BOJ
www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 삼성에서 출제된 구현 문제인데 티어가 실버 1이다. 처음엔 문제 이해가 안 됐는데 손으로 천천히 풀어써보니 이해가 갔다. 시뮬레이션 문제 특성상 문제에서 주어진 순서대로 차례차례 풀면 된다. 벨트가 한 칸 회전한다. 가장 먼저 벨트에 올라간 로봇부터, 벨트가 회전하는 방향으로 한 칸 이동할 수 있다면 이동한다. 만약 이동할 수 없다면 가만히 있는다. 로봇이 이동하기 위해서는 이동하려는 칸에..
SWEA 숫자 배열 회전
·
알고리즘/SWEA
swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pq-OKAVYDFAUq&categoryId=AV5Pq-OKAVYDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 구현력을 올리기 위해 쉬운 문제부터 풀고 있다. 배열을 90도, 180도, 270도 회전해서 출력해주면 된다. 나는 90, 180, 270을 한 행에 전부 써주고 출력하고 다시 써주고 출력하고를 반복했다. #include using namespace std; string s; int ar[8][8], n; string f1(int ..
SWEA 1974 스도쿠 검증
·
알고리즘/SWEA
swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Psz16AYEDFAUq&categoryId=AV5Psz16AYEDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 9x9 판이 주어지면 가로, 세로, 3x3 구간에 각 숫자들이 1 ~ 9까지 들어있는지 확인하는 문제다. 깡 구현 문제인데 가로, 세로는 쉽게 구현할 수 있고 3x3 사이즈도 조금만 생각해보면 쉽게 풀린다. #include using namespace std; int ar[9][9]; bool vis[9]; bool chk() { ..
SWEA 1859 백만 장자 프로젝트
·
알고리즘/SWEA
swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5LrsUaDxcDFAXc&categoryId=AV5LrsUaDxcDFAXc&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 25년 간의 수행 끝에 원재는 미래를 보는 능력을 갖게 되었다. 이 능력으로 원재는 사재기를 하려고 한다. 다만 당국의 감시가 심해 한 번에 많은 양을 사재기할 수 없다. 다음과 같은 조건 하에서 사재기를 하여 최대한의 이득을 얻도록 도와주자. 1. 원재는 연속된 N일 동안의 물건의 매매가를 예측하여 알고 있다. 2. 당국의 감시망..
BOJ 2293 동전 1, 2294 동전 2
·
알고리즘/BOJ
www.acmicpc.net/problem/2293 2293번: 동전 1 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. www.acmicpc.net 시간이 0.5초, 메모리 제한이 무려 4MB 인 DP 문제다. 메모리 제한 때문에 탑-다운보다는 바텀-업 방식으로 해결했다. d [i]는 i를 만드는데 필요한 경우의 수로 놓고 풀어보면 d [j] += d [j- ar [i]] 가 식이 된다. d [j]를 만드는 경우의 수는 d [j- ar [i]] 를 어떻게든 잘 구해놓고 d [j - ar [i]] 를 더해준다. #include #include using nam..