mym0404   3년 전

구간합 세그먼트 트리로 푸셨다는 가정하에 설명드립니다. 아니라면 풀이법부터 고안하고 오시는걸 추천드립니다.

이 문제에서 실수할 가능성이 있는 부분은 두 부분입니다.

1. 오버플로우

- 구간합 세그먼트 트리에서 트리의 자료형을 long long을 써주세요 1~200000 까지의 합은 long long으로 충분히 담을 수 있습니다. 세그먼트 트리 내에서 모듈러 연산은 필요업습니다.

- 답에 곱해줄때 오버플로우 유의해서 곱해주세요

2. 같은 위치에 나무가 심어질 수 있다.

- 문제에서 특별한 언급이 없기 때문에 가능한 경우입니다.

- 2번 부터 N번까지 나무를 심는 도중에 한번이라도 심는 비용이 0이라면 답은 0이 되어야 하겠죠. 비용이 0인 경우는 잘 생각해보시면 됩니다.

- 같은 위치에 나무가 심어질 때 이를 무시해서 e.g.) 5 => 5 로 그대로 남겨두어야 할까요 5 => 10 으로 업데이트 해주어야 할까요? 

댓글을 작성하려면 로그인해야 합니다.