일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 자바
- 백준
- java
- spring security
- JPA
- ddd
- dfs
- equals
- springboot
- pandas
- 헥사고날 아키텍처
- 데이터 flow
- 포트앤어댑터 아키텍처
- 세그먼트 트리
- BFS
- UML
- DP
- disjoint set
- 위상정렬
- 파이썬
- docker
- 비트마스크
- 알고리즘
- dataframe
- 다익스트라
- 이펙티브 자바
- series
- 문자열
- Redis
- 스프링
Archives
- Today
- Total
목록16975 (1)
코딩못하는사람
lazy propagation(16975 수열과 쿼리 21)
16975번: 수열과 쿼리 21 길이가 N인 수열 A1, A2, ..., AN이 주어진다. 이때, 다음 쿼리를 수행하는 프로그램을 작성하시오. 1 i j k: Ai, Ai+1, ..., Aj에 k를 더한다. 2 x: Ax 를 출력한다. www.acmicpc.net 1.접근 N은 십만 M도 십만이다. N^2으로 해결 불가능하고 NlogN으로 해결한다고 생각했다. 구간 합을 구하는 문제가 아닌 구간에 k를 더하는 문제이다. 생각을 조금 바꿔보자. 세그먼트 트리와 관련되서 생각해보니 1번 쿼리가 들어왔을 때 각 리프노드에 k를 더하지 않고 구간에 해당되는 노드에 k를 넣어놓고 출력할때 꺼내가면 된다고 생각했다. 2.풀이 우선 하던대로 완전 이진 트리를 리프노드만 전처리한다. 리프위에 노드들은 구간합같은 문제가..
알고리즘 정리
2020. 11. 10. 02:15