Recent Posts
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- JanusGateway
- 개성국밥
- Spring Batch
- 티스토리챌린지
- python
- mp4fpsmod
- 달인막창
- 코루틴 빌더
- tolerated
- 자원부족
- taint
- JanusWebRTCGateway
- 오블완
- JanusWebRTCServer
- pytest
- 겨울 부산
- preemption #
- Value too long for column
- table not found
- vfr video
- PytestPluginManager
- VARCHAR (1)
- JanusWebRTC
- 코루틴 컨텍스트
- 헥사고날아키텍처 #육각형아키텍처 #유스케이스
- 깡돼후
- PersistenceContext
- terminal
- kotlin
- k8s #kubernetes #쿠버네티스
Archives
너와 나의 스토리
(BOJ) 3653 영화 수집 본문
반응형
문제: https://www.acmicpc.net/problem/3653
사용 알고리즘: 세그먼트 트리
푸는 방법:
1. n+m 크기의 배열 만들어 영화들의 위치를 저장.
pos[m+n]부터 값을 넣는데 1이 가장 위로 가도록 한다.
-> pos[m]=1, pos[m+1]=2, pos[m+2]=3 .........
-> update() 함수 이용해서 해당 위치에 1 저장
2. 변수 t에 제일 위에 있는 영화의 인덱스 저장.
3. a번 영화를 뽑을 때
- query() 함수 이용해서 t~pos[a]에 존재하는 영화의 개수 출력.
- update() 함수 이용해서 pos[a]위치에 값이 0이 되게 하고,
t--; pos[a]=t; 해줌
- 다시 update() 함수로 t위치의 값에 1 넣어줌 (a가 맨 위에 왔으니까)
소스 코드:
https://gist.github.com/hovy1994/7d9134b9a9122e553c39d28d5a7e5b01#file-3653
반응형
'Algorithm > 세그먼트 트리 (Segment Tree)' 카테고리의 다른 글
[BOJ] 12837 가계부 (Hard) (0) | 2019.09.11 |
---|---|
[BOJ] 1321 군인 (0) | 2019.09.10 |
[BOJ] 2357 최솟값과 최댓값 (0) | 2019.09.10 |
(BOJ) 1849 순열 / 1777 순열복원 (0) | 2019.01.19 |
(BOJ) 5676 음주 코딩 (0) | 2019.01.19 |
Comments