일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- dp
- 삼성SW역량테스트
- CI/CD
- Cloud Pub/Sub
- REACT
- 수학
- 우선순위 큐
- 고속 푸리에 변환
- Cloud Run
- 접미사 배열
- 생활코딩
- jpa
- 다익스트라
- 삼성 SW 역량테스트
- JavaScript
- LCS
- 백준 1753번
- BFS
- 컴퓨터 구조
- 데이터 분석
- ICPC
- 시뮬레이션
- Bit
- 종만북
- 그리디
- 이분탐색
- r
- Air Table
- 다이나믹 프로그래밍
- 펜윅 트리
- Today
- Total
목록알고리즘/삼성 SW 역량테스트 기출 문제 (9)
코딩스토리
www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 처음에 너무 복잡하게 생각했었는데 사실 엄청 간단하게 해결할 수 있었다. 문제가 다행히도 매번 톱니바퀴가 회전할 때마다 상태가 변화한 것을 체크해야 하는 것이 아니고 처음 상태에서 회전할 건지 안 할 건지만 판단해주면 되는 문제였다. 아마 이 문제에서의 핵심은 X번 톱니바퀴를 회전시켰을 때 양 옆의 톱니바퀴가 회전할지 안 할지 구하고, 또 양 옆의 톱니바퀴가 회전할지 안 할지 구해야 하는 부분이 가장 구현하..
www.acmicpc.net/problem/17822 17822번: 원판 돌리기 반지름이 1, 2, ..., N인 원판이 크기가 작아지는 순으로 바닥에 놓여있고, 원판의 중심은 모두 같다. 원판의 반지름이 i이면, 그 원판을 i번째 원판이라고 한다. 각각의 원판에는 M개의 정수가 적혀 www.acmicpc.net 삼성 SW 역량테스트 문제집의 문제였다. 문제를 이해하는 데에는 어렵지 않았지만 구현이 문제였다. 일단 "원판"이라는 단어를 보자마자 deque로 구현해야겠다고 생각했다. 구현의 큰 틀은 아래와 같다. 1. 원판을 생성한다 (deque 사용) 2. 원판을 T번 돌린다 - 1) 인접한 수들을 검사한다. - 2) 인접한 수가 있다면 제거, 없다면 평균 구해서 규칙에 맞게 가감 이제 구체적인 구현을 ..
www.acmicpc.net/problem/15685 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커 www.acmicpc.net 구현과 시뮬레이션, 삼성 코테의 전형적인 유형이다. 설명은 복잡하고 어려워 보이지만 사실 풀어써보면 굉장히 간단한 문제다. 1. 0세대는 지정된 방향으로 한 칸 전진 2. 1세대 이상부터는 지금까지의 선분들을 끝점을 기준으로 모두 90도 회전 여기서 선분이라고 생각하지 않고 선분의 각 끝점이라고 생각해보면 어렵지 않다. 그럼 90도 회전은 어떻게 시켜야 하나 고민해봐야 한다. 나는 이..
백준 17144번 - 미세먼지 안녕! https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 이 문제는 시뮬레이션 문제이다. 문제의 정답률이 높길래 쉬울 거라 생각했는데 생각보다 오래 걸렸다. 문제를 풀면서 가장 기억에 남는 실수 두 가지는 1. 확산은 동시에 된다. 2. 바람이 부는 것을 구현할 때 끝에서부터? 시작해야 한다. 쉽게 말하면 아래의 코드는 왼쪽에서 오른쪽으로 바람이 부는 코드인데, 왼쪽부터 시작하지 않고 오른쪽 끝부터 시작한다. 1 ..
백준 16235번 - 나무 재테크 https://www.acmicpc.net/problem/16235 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net 이 문제는 구현 문제인 것 같다. 처음에 문제를 읽고, 봄, 여름, 가을, 겨울을 각각 함수로 만들고 deque와 tuple을 사용해 코드를 짜 보았는데 당연히 시간초과.. 이유는 아마 deque를 사용하고 체크하는 과정에서 tuple을 사용하면 deque의 장점인 인덱스 접근의 의미가 사라진다. (tuple은 index로 접근이 불가.. tie ..