문제 링크
- http://icpc.me/14899
사용 알고리즘
- 세그먼트 트리 비츠
풀이
수열과 쿼리 28와 비슷하게 풀면 됩니다.
구간에 나눗셈을 할 때 tag_condition을 두 개 잡을 겁니다.
- [(구간의 min) / d] == [(구간의 max) / d]
- (구간의 min + 1) == (구간의 max)
1번의 경우에는 전체 구간을 d로 나눠도 상관 없습니다.
만약 1번에 해당하지 않고 2번에만 해당하는 경우에는 [(구간의 min) / d] - (구간의 min)을 빼주면 됩니다.
전체 코드
1 |
|