티스토리 뷰
https://www.acmicpc.net/problem/3019
3019번: 테트리스
테트리스는 C열 필드위에서 플레이하는 유명한 게임이다. 필드의 행의 수는 무한하다. 한 번 움직일 때, 아래와 같은 일곱가지 블록 중 하나를 필드에 떨어뜨릴 수 있다. 블록을 떨어뜨리기 전에
www.acmicpc.net
각 테트리스 블록 모양을 표현하는 방법은 블록의 가장 왼쪽 상단을 기준으로 위치를 표현한다.
예를들어 회전하지 않은 상태의 5번 블록을 생각해보자.
비어있는 부분인 좌측 상단을 (0,0) 으로 보면, 차지 하는 칸은 (0,1),(1,0),(1,1),(1,2) 가 된다.
이런식으로 모든 블록의 위치 (회전한 블록 포함)를 저장해 놓고, (0,0) 부터 모두 놓아보면서 겹치거나 범위를 벗어나거나 아래 블록이 있는지 없는지 확인해 보면 된다.
주의할점은 칸의 높이가 최대 100으로 나와있는데 행의 수는 무한이라고 했다.
따라서 높이 100 위에 블록들이 쌓일수도 있다는 것이다.
'PS' 카테고리의 다른 글
백준 15787. 기차가 어둠을 헤치고 은하수를 (0) | 2023.10.17 |
---|---|
백준 21314. 민겸 수 (0) | 2023.10.17 |
백준 19942. 다이어트 (0) | 2023.10.16 |
백준 2607. 비슷한 단어 (0) | 2023.10.16 |
백준 18116. 로봇 조립 (0) | 2023.10.16 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- binary search
- 재귀
- 조합
- recursion
- 자료구조
- Brute Force
- permutation
- Unity
- CSS
- Spring
- Dijkstra
- DP
- C++
- Stack
- two pointer
- graph
- floyd warshall
- db
- Python
- Tree
- Implementation
- greedy
- dfs
- C
- BFS
- 이분탐색
- MVC
- back tracking
- priority queue
- Kruskal
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함