일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- next_permutation
- c++
- 삼성 SW 역량 테스트
- SWEA
- 브루트포스
- Web
- pass
- 스택/큐
- 시뮬레이션
- 2019 KAKAO BLIND
- DP
- 코드 리뷰
- BFS
- level 1
- Gold 4
- 구현
- 월간 코드 챌린지
- 부스트코스
- 코드리뷰
- Level 2
- Gold 5
- 2020 KAKAO BLIND
- DFS
- 백트래킹
- Level 3
- 프로그래머스
- 백준
- 그리디
- Level 4
- 2020 카카오 인턴십
- Today
- Total
목록시뮬레이션 (9)
Min:D's Devlog
문제 백준 삼성 SW 역량 테스트 기출 문제 - 3190 뱀 (Gold 5) 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 문제 풀이 접근 방식 사과의 위치와 뱀의 이동경로가 주어질 때, Dummy 게임이 몇 초에 끝나는 지를 구하는 문제이다. 게임 시작 시, 뱀은 맨 위 맨 좌측에 위치하며, 다음과 같이 이동한다. 우선, 입력값을 받아 map에 사과의 위치의 값을 -1로 저장해주었고, 방향 전환 시기와 방향을 각각 X, C 벡터에 저장해주었다. 뱀은 맨 앞의 값을 조회하고, 맨 앞에 값을 추가하고, 맨 뒤의 값을..
문제 백준 삼성 SW 역량 테스트 기출 문제 - 17822 원판 돌리기 (Gold 3) 17822번: 원판 돌리기 반지름이 1, 2, ..., N인 원판이 크기가 작아지는 순으로 바닥에 놓여있고, 원판의 중심은 모두 같다. 원판의 반지름이 i이면, 그 원판을 i번째 원판이라고 한다. 각각의 원판에는 M개의 정수가 적혀 www.acmicpc.net 문제 풀이 접근 방식 원판을 T번 회전시킨 후, 원판에 적힌 수의 합을 구하는 문제이다. 우선, 원판의 값을 입력받은 후, for문을 통해 T번 회전을 수행하였다. d가 0일 때는 시계 방향으로 회전시키고, d가 1일 때는 반시계 방향으로 회전시켜야 한다. 그래서 d가 0일 때는 -1로 값을 바꿔주었고, 아래의 for문을 통해 x의 배수의 원판들을 d 방향으로 ..
문제 백준 삼성 SW 역량 테스트 기출 문제 - 14499 주사위 굴리기 (Gold 5) 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도 www.acmicpc.net 문제 풀이 접근 방식 이 문제는 주사위를 규칙에 맞게 굴려 윗면의 수를 출력하는 시뮬레이션 문제였다. 우선, 아래의 전개도에 적혀 있는 숫자가 벡터의 인덱스를 의미하고, 인덱스 5가 주사위의 아래쪽인 dice 벡터를 만들어주었고, 모든 값을 0으로 초기화해주었다. 그리고 move 함수를 만들어 주사위를 이동시켜..
문제 백준 삼성 SW 역량 테스트 기출 문제 - 17140 이차원 배열과 연산 (Gold 4) 17140번: 이차원 배열과 연산 첫째 줄에 r, c, k가 주어진다. (1 ≤ r, c, k ≤ 100) 둘째 줄부터 3개의 줄에 배열 A에 들어있는 수가 주어진다. 배열 A에 들어있는 수는 100보다 작거나 같은 자연수이다. www.acmicpc.net 문제 풀이 접근 방식 주어진 A 배열에 1초마다 아래의 연산을 수행할 때, A[r][c]의 값이 k가 되기 위한 최소 시간을 구하는 문제이다. 먼저, A를 100 × 100 크기의 배열로 만들고, 모든 값을 0으로 초기화해주었다. A에 입력값을 저장하고 행의 개수 row와 열의 개수 col을 3으로 설정해준 후, while문에서 연산을 수행하였다. 우선, R..
문제 백준 삼성 SW 역량 테스트 기출문제 - 14503 로봇 청소기 (Gold 5) 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 문제 풀이 접근 방식 로봇 청소기가 아래와 같이 작동할 때, 청소하는 영역의 개수를 구하는 문제이다. 이 문제는 위의 작동 방식대로 로봇 청소기를 구현하는 시뮬레이션 문제였다. 그래서 while문을 사용하여 조건대로 구현해주었다. 우선, 현 위치의 값이 0이면(청소가 되어있지 않으면) 값을 2로 바꿔주고 answer++를 수행하였다. 그 후, 네 방향을 왼쪽부터 탐색하며 다음으..
문제 백준 삼성 SW 역량 테스트 기출 문제 - 14891 톱니바퀴 (Silver 1) 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 � www.acmicpc.net 문제 풀이 접근 방식 주어진 규칙대로 톱니바퀴를 회전시킬 때, 최종 톱니바퀴의 상태를 구하는 문제이다. 한 톱니바퀴가 회전할 때 옆의 톱니바퀴와 맞닿은 톱니의 극이 다른 경우, 옆의 톱니바퀴는 반대방향으로 회전하게 된다. 이를 고려하여 톱니바퀴를 회전시켜주었다. 우선, 회전시킬 톱니바퀴의 주변으로 퍼져나가며 함께 회전시킬 바퀴들을 탐색을 해야하기 때문에, BFS 함수를..
문제 백준 삼성 SW 역량 테스트 기출 문제 - 15685 드래곤 커브 (Gold 4) 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커� www.acmicpc.net 문제 풀이 접근 방식 정사각형의 네 꼭짓점이 모두 드래곤 커브의 일부인 정사각형의 개수를 구하는 문제이다. 드래곤 커브는 이전 세대의 커브를 시계 방향으로 90도 회전시켜 끝 점에 붙인 형태로 만들어진다. 우선, 이렇게 만들어지는 드래곤 커브에 규칙성이 있는지를 확인해보았다. 방향이 0으로 시작하는 커브의 경우 0 - 01 - 0121 - 01212..
문제 백준 삼성 SW 역량 테스트 기출 문제 - 15683 감시 (Gold 5) 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감�� www.acmicpc.net 문제 풀이 접근 방식 이 문제는 CCTV의 방향을 적절히 정해서, 사각 지대의 최소 크기를 구하는 문제이다. CCTV는 아래와 같이 번호에 따라 감시하는 방향이 다르다. 어느 방향으로 CCTV를 설치했을 때 사각 지대가 최소가 되는 지 구하는 문제이기 때문에, DFS 함수를 만들어 모든 CCTV의 설치 방향(4방향)에 따른 사각 지대의 크기를 구해주었다. DFS 함수에서..
문제 SWEA 모의 SW 역량테스트 - 2477 차량 정비소 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 풀이 접근 방식 주어진 접수 창구 번호와 정비 창구 번호를 이용한 고객들의 고객 번호의 합을 구하는 문제이다. 이 문제는 주어진 조건들을 고려하여 그대로 구현하는 시뮬레이션 문제였다. 그래서 4가지 과정을 통해 문제를 해결하였다. 1. 접수 대기열 추가 현재 시간에 온 고객들을 접수 대기열에 넣어주었다. 접수 대기열을 큐로 구현하여 방문한 순서대로 사용할 수 있도록 해주었다. 2. 접수 & 수리 대기열 추가 접수 대기열에 고객이 있고, 접수 창구가 빈 창구일 경우에 대기열에 있는 고객을 접수 창구로..