본문 바로가기

전체 글105

백준 20061 모노미노도미노 2 - 삼성 SW 역량 테스트 기출 백준 20061 모노미노도미노 2 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/20061 20061번: 모노미노도미노 2 모노미노도미노는 아래와 같이 생긴 보드에서 진행되는 게임이다. 보드는 빨간색 보드, 파란색 보드, 초록색 보드가 그림과 같이 붙어있는 형태이다. 게임에서 사용하는 좌표 (x, y)에서 x는 행, www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 이 문제를 시험장에서 만났다면, 다른 문제를 풀었을 것이다. 2. 블록은 1 x 1 / 1 x 2 / 2 x 1 의 총 3개로 주어진다. 3. 빨간 보드에 위치한 블록은 초록, 파랑 보드로 각각 이동한다.(그래서 각각 구현했다.) 4. 각 보드에서 블록의 움직임은 아래.. 2021. 9. 29.
백준 17779 게리맨더링 2 - 삼성 SW 역량 테스트 기출 백준 17779 게리맨더링 2 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/17779 17779번: 게리맨더링 2 재현시의 시장 구재현은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 구재현은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 이 문제는 모든 경우의 수를 해보면 된다. (완전 탐색 / Brute Force) . 그렇기 때문에 y, x, d1, d2의 모든 경우를 따져봐야한다. . 여기서 수행 시간을 줄이려면 경우를 따지기 전에 d1과 d2가 가능한 값인지 체크해야한다. (코드 참고) . 사전 체크를 한 경우와 .. 2021. 9. 28.
백준 17144 미세먼지 안녕! - 삼성 SW 역량 테스트 기출 백준 17144 미세먼지 안녕! - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 공기 청정기가 위 아래에서 각각 공기를 정화한다. 따라서 위와 아래를 따로 구현했다. 2. 먼지 확산은 copyBoard에 기록하고 다시 원래 board에 대입했다. (copyBoard에 공기청정기 표시해야함) 3. 먼지의 이동(공기 청정)은 먼지의 이동 방향과 역방향으로 접근해.. 2021. 9. 28.
백준 17143 낚시왕 - 삼성 SW 역량 테스트 기출 백준 17143 낚시왕 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/17143 17143번: 낚시왕 낚시왕이 상어 낚시를 하는 곳은 크기가 R×C인 격자판으로 나타낼 수 있다. 격자판의 각 칸은 (r, c)로 나타낼 수 있다. r은 행, c는 열이고, (R, C)는 아래 그림에서 가장 오른쪽 아래에 있는 칸이다. www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. ArrayList sharkList에 상어 정보를 담는다. 2. 낚시왕이 한 칸 이동하여 상어 잡음 -> 상어 이동 의 반복이다. 3. 상어를 특정지을 수 있는 것은 크기이다. 따라서 상어를 잡거나 먹을 때 크기를 기준으로 한다. 4. 낚시왕이 잡은 상어의 크기를 기억해.. 2021. 9. 27.
백준 19238 스타트 택시 - 삼성 SW 역량 테스트 기출 백준 19238 스타트 택시 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/19238 19238번: 스타트 택시 첫 줄에 N, M, 그리고 초기 연료의 양이 주어진다. (2 ≤ N ≤ 20, 1 ≤ M ≤ N2, 1 ≤ 초기 연료 ≤ 500,000) 연료는 무한히 많이 담을 수 있기 때문에, 초기 연료의 양을 넘어서 충전될 수도 있다. 다 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 승객 클래스를 구현했으며, 들어온 순서대로 번호를 매겼다. . 승객 번호를 board에 마킹할 수 있다. . 승객 번호로 ArrayList customerInfo(승객 정보)에 접근할 수 있다. 2. 택시의 이동은 아래와 같이 진행 된다. . 가.. 2021. 9. 27.
백준 16234 인구이동 - 삼성 SW 역량 테스트 기출 백준 16234 인구이동 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 모든 좌표에 대해 연합 조사를 진행하며, 이미 연합이 있는 경우는 제외한다. 2. 연합에 대한 numbering을 하기 위해 int[][] visit에 연합 번호를 넣었다. 3. 연합 번호는 매 BFS가 끝난 뒤 1 증가한다. 4. BFS에서 연합이 되는 모든 위치를 Arr.. 2021. 9. 26.