문제 49 지방 선거 시뮬레이션 솔루션

A. 관리자

이 문제는 서브 트리 당 비트 수이다.

개량 동작마다의 최대 값을 변경한다.

지금까지 수정 전에 값이 $ X $, $ X $가 중간의 조상, 중간에 다음 아무런 영향보다 큰 경우와 같이 그렇지 않은 경우는 될 수있는 중간 번호에 대한 정답을 업데이트합니다.

긴 전처리로 다음으로 두 개의 답을 발견했다.

모든 작업이 한 데이터 구조를 유지하기 위해, 도망 수정 쿼리 간격의 단일 지점을 지원하는 것으로, 체인의 조상을 요청하는 것입니다.

 

B. GCD 재방송

첫째, 뫼비우스 반전을 얻기 위해, 다음 문제는 GCD로 $ \의 계산 $ X $ $의 배수로 변환됩니다.

각 $를 들어 세 가지 범주로, 시퀀스의 각을 $를 X.

$ X $ 배수 일부 접미사 $ \ GCD $이 있으며, 통합 $ \ GCD을 $ $ X $ 배수에 $ X $, 일부 접두사 $ \ GCD의 $의 배수이다.

그런 다음 $ $ $ GCD 배수는 몇몇 종류로 $ X의 간격을 나눌 수 있습니다.

클래스마다, 조합의 수는 라인을 사용하여 계산 하였다.

 

C.의 DICT

사전 식으로 엄격하게 적은 다른 문자열보다 문자열의 수를 계산하기 위해서는 정해진 비트를 제시한다.

얼마나 많은 원래 문자열의 앞에 열거하는 것은 다음 제국이 현재 비트의 현재 문자열 비교보다 적은 비트, 동일합니다.

그리고 각 번호 캔 채우기 조합의 번호와 $ O (㎚) $를, 사실, 프로세스가 이진 트리의 분할에 해당하는 번호를 입력 계속되는 폭력을 훨씬 아니다 발견했다.

그래서 나무 $에 $의 DSU를 찾아, 모든 두 가지 가능성 : 현재 컬렉션, 전집은 보완 루틴을 줄일 수 있습니다.

추천

출처www.cnblogs.com/skyh/p/12520583.html