Group [HDU - 4638] [오프라인 트 리 배열]
4818 단어 데이터 구조오프라인 트 리 배열
Input
First line is T indicate the case number. For each case first line is n, m(1<=n ,m<=100000) indicate there are n men and m query. Then a line have n number indicate the ID of men from left to right. Next m line each line has two number L,R(1<=L<=R<=n),mean we want to know the answer of [L,R].
Output
For every query output a number indicate there should be how many group so that the sum of value is max.
Sample Input
1
5 2
3 1 2 5 4
1 5
2 4
Sample Output
1
2
문제 면... 어차피 이 문제 맞 아.
문 제 는 N 개 수 를 먼저 제시 한 뒤 구간 내 연속 수의 개수 (하나 도 연속 되 지 않 으 면 자신 과 연속 되 더 라 도 한 조로 한다) 를 묻 는 것 이다.
예 를 들 어 우 리 는 5 개의 숫자 가 있 는데 {3, 1, 2, 5, 4} 이다.조회 [2, 4] 의 연속 수의 개 수 는 바로 {1, 2}, {5} 이다. 문 제 는 우리 가 이 사상 을 어떻게 바 꿔 야 하 느 냐 하 는 것 이다.
처음에 저 는 예전 에 구간 의 상호 질 수 를 구 하 는 개수 라 고 생각 했 습 니 다. 그 때 는 일정한 순서에 따라 순 서 를 매 긴 다음 에 질 인자 의 다음 사람 이 나타 나 는 위 치 를 미리 처리 하고 업 데 이 트 를 했 습 니 다. 그런데 이 문 제 는 실 용적 이지 않 았 습 니 다. 이 수 를 넣 으 면 '4' 이 고 '3', '5' 를 만나면 처리 해 야 하지만 '3', '5' 의 위치 에 있 으 면 '2', '6' 을 만 들 수 있 습 니 다.잠깐 만.
그리고 방법 을 생각해 보 세 요. 만약 그의 좌우 가 조회 구간 안에 나타 나 면 전달 하고 옮 길 수 있 지 않 을까요?조회 의 왼쪽 구간 상승 순 서 를 살 펴 보 세 요. 만약 에 전달 하 는 수량 이 그의 좌우 요소 값 이 나 타 났 다 면 해당 위치 에 + 1 을 붙 이 고 이렇게 끊임없이 판단 을 연속 합 니 다. 그러면 오른쪽 단점 의 불안정 성 은 처리 하기 어렵 습 니 다. 하지만 이렇게 전달 할 수도 있 습 니 다. 이런 전달 은 매번 조회 의 단점 에 가 야 하 는 오른쪽 구간 의 업 데 이 트 를 만족 시 켜 야 합 니 다.하지만 그동안 의 연속 관계 가 끊 어 지면 처리 하기 가 쉽 지 않 을 텐 데................................................
그래서 나 는 방법 을 바 꾸 어 왼쪽 구간 의 순 서 를 내 렸 다. 이렇게 하면 나타 난 노드 에 '+ 1' 을 붙 여 그들 사이 의 관계 가 존재 한 다 는 것 을 표시 할 수 있다. 만약 좌우 구간 이 모두 존재 한다 면 모두 + 1 한 다음 에 조회 한 각 구간 은 구간 의 길이 로 관 계 를 직접 빼 면 된다.
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.