시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB55171631.373%

문제

자카르타에는 $N$개의 송신탑이 있다. 송신탑들은 일직선 상에 위치하며 왼쪽에서 오른쪽으로 $0$부터 $N - 1$까지 번호가 붙어 있다. $0 \le i \le N - 1$인 각 $i$에 대해, 송신탑 $i$의 높이는 $H[i]$ 미터이다. 송신탑들의 높이는 모두 다르다.

어떤 양의 간섭 수치 $\delta$에 대해, 한 쌍의 송신탑 $i$와 $j$ ($0 \le i \lt j \le N - 1$)가 서로 통신할 수 있다는 것은 다음을 모두 만족하는 중개 송신탑 $k$가 존재한다는 것을 의미한다.

  • 송신탑 $i$는 송신탑 $k$의 왼쪽에 위치하고 송신탑 $j$는 송신탑 $k$의 오른쪽에 위치한다. 즉, $i \lt k \lt j$이다.
  • 송신탑 $i$와 $j$의 높이는 최대 $H[k] - \delta$ 미터이다.

팍 뎅클렉은 자신의 새로운 송신 네트워크를 위해 몇 개의 송신탑을 빌리려고 한다. 당신은 다음과 같은 팍 뎅클렉의 질문 $Q$개에 대해 답변해야 한다: 파라미터 $L, R$과 $D$ ($0 \le L \le R \le N - 1$이고 $D > 0$)가 주어지면, 팍 뎅클렉이 빌릴 수 있는 송신탑의 최대 개수는 몇 개인가? 단, 다음을 가정한다:

  • 팍 뎅클렉은 번호 $L$과 $R$ 사이($L$과 $R$ 포함)의 송신탑만 빌릴 수 있고,
  • 간섭 수치 $\delta$는 $D$이고,
  • 팍 뎅클렉이 빌리는 송신탑들은 어떤 쌍을 선택하던지 서로 통신할 수 있어야 한다.

참고로 빌린 두 송신탑이 중개 송신탑 $k$를 이용하여 통신할 수 있을 때, 송신탑 $k$는 빌렸어도 되고 빌리지 않았어도 된다.

구현

다음 함수를 구현해야 한다:

void init(int N, int[] H)
  • $N$: 송신탑의 개수.
  • $H$: 송신탑의 높이를 나타내는 길이 $N$인 배열.
  • 이 함수는 최초에 한번만 호출된다. 이후에 아래에 설명된 max_towers 호출이 이어진다.
int max_towers(int L, int R, int D)
  • $L$, $R$: 송신탑 범위의 경계.
  • $D$: 간섭 수치 $\delta$.
  • 이 함수는 팍 뎅클렉이 빌릴 수 있는 송신탑의 범위가 $L$과 $R$ 사이($L$과 $R$ 포함)로 한정되고 간섭 수치 $\delta$가 $D$일 때 그가 빌릴 수 있는 송신탑의 최대 개수를 리턴해야 한다.
  • 이 함수는 정확히 $Q$번 호출된다.

예제

다음 호출을 생각해보자:

init(7, [10, 20, 60, 40, 50, 30, 70])
max_towers(1, 5, 10)

팍 뎅클렉은 송신탑 $1$, $3$, 그리고 $5$를 빌릴 수 있다. 아래 그림에서 색칠된 사다리꼴이 빌린 송신탑을 나타낸다.

$40 \le 50 - 10$이고 $30 \le 50 - 10$이므로 송신탑 $3$과 $5$는 송신탑 $4$를 중개 송신탑으로 이용해서 서로 통신할 수 있다. 송신탑 $1$과 $3$은 중개 송신탑 $2$를 이용하여 서로 통신할 수 있다. 송신탑 $1$과 $5$는 중개 송신탑 $3$을 이용하여 서로 통신할 수 있다. $3$개보다 더 많은 송신탑을 빌릴 수 있는 방법이 없으므로, 함수는 $3$을 리턴해야 한다.

max_towers(2, 2, 100)

범위에 포함되는 송신탑이 $1$개 밖에 없으므로, 팍 뎅클렉은 오직 $1$개의 송신탑만 빌릴 수 있다. 따라서 함수는 $1$을 리턴해야 한다.

max_towers(0, 6, 17)

팍 뎅클렉은 송신탑 $1$과 $3$을 빌릴 수 있다. $20 \le 60 - 17$이고 $40 \le 60 - 17$이므로 송신탑 $1$과 $3$은 중개 송신탑 $2$를 이용하여 서로 통신할 수 있다. $2$개보다 더 많은 송신탑을 빌릴 수 있는 방법이 없으므로, 함수는 $2$를 리턴해야 한다.

제한

  • $1 \le N \le 100\,000$
  • $1 \le Q \le 100\,000$
  • $1 \le H[i] \le 10^9$ (모든 $0 \le i \le N - 1$)
  • $H[i] \ne H[j]$ (모든 $0 \le i \lt j \le N - 1$)
  • $0 \le L \le R \le N - 1$
  • $1 \le D \le 10^9$

서브태스크

번호배점제한
14

다음을 모두 만족하는 송신탑 $k$ ($0 \le k \le N - 1$)가 존재한다.

  • $0\le i\le k-1$인 모든 $i$에 대해: $H[i] \lt H[i + 1]$이고
  • $k \le i \le N - 2$인 모든 $i$에 대해: $H[i] \gt H[i + 1]$이다.
211

$Q = 1$, $N \le 2000$

312

$Q = 1$

414

$D = 1$

517

$L = 0$, $R = N - 1$

619

모든 max_towers 호출에 대해 $D$ 값이 동일하다.

723

추가적인 제한이 없다.

W3sicHJvYmxlbV9pZCI6IjI1NDQwIiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVjMWExXHVjMmUwXHVkMGQxIiwiZGVzY3JpcHRpb24iOiI8cD5cdWM3OTBcdWNlNzRcdWI5NzRcdWQwYzBcdWM1ZDBcdWIyOTQgJE4kXHVhYzFjXHVjNzU4IFx1YzFhMVx1YzJlMFx1ZDBkMVx1Yzc3NCBcdWM3ODhcdWIyZTQuIFx1YzFhMVx1YzJlMFx1ZDBkMVx1YjRlNFx1Yzc0MCBcdWM3N2NcdWM5YzFcdWMxMjAgXHVjMGMxXHVjNWQwIFx1YzcwNFx1Y2U1OFx1ZDU1OFx1YmE3MCBcdWM2N2NcdWNhYmRcdWM1ZDBcdWMxMWMgXHVjNjI0XHViOTc4XHVjYWJkXHVjNzNjXHViODVjICQwJFx1YmQ4MFx1ZDEzMCAkTiAtIDEkXHVhZTRjXHVjOWMwIFx1YmM4OFx1ZDYzOFx1YWMwMCBcdWJkOTlcdWM1YjQgXHVjNzg4XHViMmU0LiAkMCBcXGxlIGkgXFxsZSBOIC0gMSRcdWM3NzggXHVhYzAxICRpJFx1YzVkMCBcdWIzMDBcdWQ1NzQsIFx1YzFhMVx1YzJlMFx1ZDBkMSAkaSRcdWM3NTggXHViMTkyXHVjNzc0XHViMjk0ICRIW2ldJCBcdWJiZjhcdWQxMzBcdWM3NzRcdWIyZTQuIFx1YzFhMVx1YzJlMFx1ZDBkMVx1YjRlNFx1Yzc1OCBcdWIxOTJcdWM3NzRcdWIyOTQgXHViYWE4XHViNDUwIDxzdHJvbmc+XHViMmU0XHViOTc0XHViMmU0PFwvc3Ryb25nPi48XC9wPlxyXG5cclxuPHA+XHVjNWI0XHViNWE0IFx1YzU5MVx1Yzc1OCBcdWFjMDRcdWMxMmQgXHVjMjE4XHVjZTU4ICRcXGRlbHRhJFx1YzVkMCBcdWIzMDBcdWQ1NzQsIFx1ZDU1YyBcdWMzMGRcdWM3NTggXHVjMWExXHVjMmUwXHVkMGQxICRpJFx1YzY0MCAkaiQgKCQwIFxcbGUgaSBcXGx0IGogXFxsZSBOIC0gMSQpXHVhYzAwIFx1YzExY1x1Yjg1YyBcdWQxYjVcdWMyZTBcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNFx1YjI5NCBcdWFjODNcdWM3NDAgXHViMmU0XHVjNzRjXHVjNzQ0IFx1YmFhOFx1YjQ1MCBcdWI5Y2NcdWM4NzFcdWQ1NThcdWIyOTQgXHVjOTExXHVhYzFjIFx1YzFhMVx1YzJlMFx1ZDBkMSAkayRcdWFjMDAgXHVjODc0XHVjN2FjXHVkNTVjXHViMmU0XHViMjk0IFx1YWM4M1x1Yzc0NCBcdWM3NThcdWJiZjhcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+XHVjMWExXHVjMmUwXHVkMGQxICRpJFx1YjI5NCBcdWMxYTFcdWMyZTBcdWQwZDEgJGskXHVjNzU4IFx1YzY3Y1x1Y2FiZFx1YzVkMCBcdWM3MDRcdWNlNThcdWQ1NThcdWFjZTAgXHVjMWExXHVjMmUwXHVkMGQxICRqJFx1YjI5NCBcdWMxYTFcdWMyZTBcdWQwZDEgJGskXHVjNzU4IFx1YzYyNFx1Yjk3OFx1Y2FiZFx1YzVkMCBcdWM3MDRcdWNlNThcdWQ1NWNcdWIyZTQuIFx1Yzk4OSwgJGkgXFxsdCBrIFxcbHQgaiRcdWM3NzRcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YzFhMVx1YzJlMFx1ZDBkMSAkaSRcdWM2NDAgJGokXHVjNzU4IFx1YjE5Mlx1Yzc3NFx1YjI5NCBcdWNkNWNcdWIzMDAgJEhba10gLSBcXGRlbHRhJCBcdWJiZjhcdWQxMzBcdWM3NzRcdWIyZTQuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+XHVkMzBkIFx1YjM4NVx1ZDA3NFx1YjgwOVx1Yzc0MCBcdWM3OTBcdWMyZTBcdWM3NTggXHVjMGM4XHViODVjXHVjNmI0IFx1YzFhMVx1YzJlMCBcdWIxMjRcdWQyYjhcdWM2Y2NcdWQwNmNcdWI5N2MgXHVjNzA0XHVkNTc0IFx1YmE4NyBcdWFjMWNcdWM3NTggXHVjMWExXHVjMmUwXHVkMGQxXHVjNzQ0IFx1YmU0Y1x1YjlhY1x1YjgyNFx1YWNlMCBcdWQ1NWNcdWIyZTQuIFx1YjJmOVx1YzJlMFx1Yzc0MCBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzQwIFx1ZDMwZCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NTggXHVjOWM4XHViYjM4ICRRJFx1YWMxY1x1YzVkMCBcdWIzMDBcdWQ1NzQgXHViMmY1XHViY2MwXHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNDogXHVkMzBjXHViNzdjXHViYmY4XHVkMTMwICRMLCBSJFx1YWNmYyAkRCQgKCQwIFxcbGUgTCBcXGxlIFIgXFxsZSBOIC0gMSRcdWM3NzRcdWFjZTAgJEQgJmd0OyAwJClcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWMwXHViYTc0LCBcdWQzMGQgXHViMzg1XHVkMDc0XHViODA5XHVjNzc0IFx1YmU0Y1x1YjliNCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzFhMVx1YzJlMFx1ZDBkMVx1Yzc1OCBcdWNkNWNcdWIzMDAgXHVhYzFjXHVjMjE4XHViMjk0IFx1YmE4NyBcdWFjMWNcdWM3NzhcdWFjMDA/IFx1YjJlOCwgXHViMmU0XHVjNzRjXHVjNzQ0IFx1YWMwMFx1YzgxNVx1ZDU1Y1x1YjJlNDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWQzMGQgXHViMzg1XHVkMDc0XHViODA5XHVjNzQwIFx1YmM4OFx1ZDYzOCAkTCRcdWFjZmMgJFIkIFx1YzBhY1x1Yzc3NCgkTCRcdWFjZmMgJFIkIFx1ZDNlY1x1ZDU2OClcdWM3NTggXHVjMWExXHVjMmUwXHVkMGQxXHViOWNjIFx1YmU0Y1x1YjliNCBcdWMyMTggXHVjNzg4XHVhY2UwLDxcL2xpPlxyXG5cdDxsaT5cdWFjMDRcdWMxMmQgXHVjMjE4XHVjZTU4ICRcXGRlbHRhJFx1YjI5NCAkRCRcdWM3NzRcdWFjZTAsPFwvbGk+XHJcblx0PGxpPlx1ZDMwZCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NzQgXHViZTRjXHViOWFjXHViMjk0IFx1YzFhMVx1YzJlMFx1ZDBkMVx1YjRlNFx1Yzc0MCBcdWM1YjRcdWI1YTQgXHVjMzBkXHVjNzQ0IFx1YzEyMFx1ZDBkZFx1ZDU1OFx1YjM1OFx1YzljMCBcdWMxMWNcdWI4NWMgXHVkMWI1XHVjMmUwXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWM1YjRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1Y2MzOFx1YWNlMFx1Yjg1YyBcdWJlNGNcdWI5YjAgXHViNDUwIFx1YzFhMVx1YzJlMFx1ZDBkMVx1Yzc3NCBcdWM5MTFcdWFjMWMgXHVjMWExXHVjMmUwXHVkMGQxICRrJFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NThcdWM1ZWMgXHVkMWI1XHVjMmUwXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWM3NDQgXHViNTRjLCBcdWMxYTFcdWMyZTBcdWQwZDEgJGskXHViMjk0IFx1YmU0Y1x1YjgzOFx1YzViNFx1YjNjNCBcdWI0MThcdWFjZTAgXHViZTRjXHViOWFjXHVjOWMwIFx1YzU0YVx1YzU1OFx1YzViNFx1YjNjNCBcdWI0MWNcdWIyZTQuPFwvcD5cclxuIiwiaW5wdXQiOiIiLCJvdXRwdXQiOiIiLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJLb3JlYW4iLCJsaW1pdCI6Ijx1bD5cclxuXHQ8bGk+JDEgXFxsZSBOIFxcbGUgMTAwXFwsMDAwJDxcL2xpPlxyXG5cdDxsaT4kMSBcXGxlIFEgXFxsZSAxMDBcXCwwMDAkPFwvbGk+XHJcblx0PGxpPiQxIFxcbGUgSFtpXSBcXGxlIDEwXjkkIChcdWJhYThcdWI0ZTAgJDAgXFxsZSBpIFxcbGUgTiAtIDEkKTxcL2xpPlxyXG5cdDxsaT4kSFtpXSBcXG5lIEhbal0kIChcdWJhYThcdWI0ZTAgJDAgXFxsZSBpIFxcbHQgaiBcXGxlIE4gLSAxJCk8XC9saT5cclxuXHQ8bGk+JDAgXFxsZSBMIFxcbGUgUiBcXGxlIE4gLSAxJDxcL2xpPlxyXG5cdDxsaT4kMSBcXGxlIEQgXFxsZSAxMF45JDxcL2xpPlxyXG48XC91bD5cclxuIiwic3VidGFzazEiOiI8cD5cdWIyZTRcdWM3NGNcdWM3NDQgXHViYWE4XHViNDUwIFx1YjljY1x1Yzg3MVx1ZDU1OFx1YjI5NCBcdWMxYTFcdWMyZTBcdWQwZDEgJGskICgkMCBcXGxlIGsgXFxsZSBOIC0gMSQpXHVhYzAwIFx1Yzg3NFx1YzdhY1x1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT4kMFxcbGUgaVxcbGUgay0xJFx1Yzc3OCBcdWJhYThcdWI0ZTAgJGkkXHVjNWQwIFx1YjMwMFx1ZDU3NDogJEhbaV0gXFxsdCBIW2kgKyAxXSRcdWM3NzRcdWFjZTA8XC9saT5cclxuXHQ8bGk+JGsgXFxsZSBpIFxcbGUgTiAtIDIkXHVjNzc4IFx1YmFhOFx1YjRlMCAkaSRcdWM1ZDAgXHViMzAwXHVkNTc0OiAkSFtpXSBcXGd0IEhbaSArIDFdJFx1Yzc3NFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcbiIsInN1YnRhc2syIjoiPHA+JFEgPSAxJCwgJE4gXFxsZSAyMDAwJDxcL3A+XHJcbiIsInN1YnRhc2szIjoiPHA+JFEgPSAxJDxcL3A+XHJcbiIsInN1YnRhc2s0IjoiPHA+JEQgPSAxJDxcL3A+XHJcbiIsInN1YnRhc2s1IjoiPHA+JEwgPSAwJCwgJFIgPSBOIC0gMSQ8XC9wPlxyXG4iLCJzdWJ0YXNrNiI6IjxwPlx1YmFhOFx1YjRlMCA8Y29kZT5tYXhfdG93ZXJzPFwvY29kZT4gXHVkNjM4XHVjZDljXHVjNWQwIFx1YjMwMFx1ZDU3NCAkRCQgXHVhYzEyXHVjNzc0IFx1YjNkOVx1Yzc3Y1x1ZDU1OFx1YjJlNC48XC9wPlxyXG4iLCJzdWJ0YXNrNyI6IjxwPlx1Y2Q5NFx1YWMwMFx1YzgwMVx1Yzc3OCBcdWM4MWNcdWQ1NWNcdWM3NzQgXHVjNWM2XHViMmU0LjxcL3A+XHJcbiIsImN1c3RvbV9pbXBsZW1lbnRhdGlvbiI6IjxwPlx1YjJlNFx1Yzc0YyBcdWQ1NjhcdWMyMThcdWI5N2MgXHVhZDZjXHVkNjA0XHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNDo8XC9wPlxyXG5cclxuPHByZT5cclxuPGNvZGU+dm9pZCBpbml0KGludCBOLCBpbnRbXSBIKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjx1bD5cclxuXHQ8bGk+JE4kOiBcdWMxYTFcdWMyZTBcdWQwZDFcdWM3NTggXHVhYzFjXHVjMjE4LjxcL2xpPlxyXG5cdDxsaT4kSCQ6IFx1YzFhMVx1YzJlMFx1ZDBkMVx1Yzc1OCBcdWIxOTJcdWM3NzRcdWI5N2MgXHViMDk4XHVkMGMwXHViMGI0XHViMjk0IFx1YWUzOFx1Yzc3NCAkTiRcdWM3NzggXHViYzMwXHVjNWY0LjxcL2xpPlxyXG5cdDxsaT5cdWM3NzQgXHVkNTY4XHVjMjE4XHViMjk0IFx1Y2Q1Y1x1Y2QwOFx1YzVkMCBcdWQ1NWNcdWJjODhcdWI5Y2MgXHVkNjM4XHVjZDljXHViNDFjXHViMmU0LiBcdWM3NzRcdWQ2YzRcdWM1ZDAgXHVjNTQ0XHViNzk4XHVjNWQwIFx1YzEyNFx1YmE4NVx1YjQxYyA8Y29kZT5tYXhfdG93ZXJzPFwvY29kZT4gXHVkNjM4XHVjZDljXHVjNzc0IFx1Yzc3NFx1YzViNFx1YzljNFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cHJlPlxyXG48Y29kZT5pbnQgbWF4X3Rvd2VycyhpbnQgTCwgaW50IFIsIGludCBEKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjx1bD5cclxuXHQ8bGk+JEwkLCAkUiQ6IFx1YzFhMVx1YzJlMFx1ZDBkMSBcdWJjOTRcdWM3MDRcdWM3NTggXHVhY2JkXHVhY2M0LjxcL2xpPlxyXG5cdDxsaT4kRCQ6IFx1YWMwNFx1YzEyZCBcdWMyMThcdWNlNTggJFxcZGVsdGEkLjxcL2xpPlxyXG5cdDxsaT5cdWM3NzQgXHVkNTY4XHVjMjE4XHViMjk0IFx1ZDMwZCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NzQgXHViZTRjXHViOWI0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVjMWExXHVjMmUwXHVkMGQxXHVjNzU4IFx1YmM5NFx1YzcwNFx1YWMwMCAkTCRcdWFjZmMgJFIkIFx1YzBhY1x1Yzc3NCgkTCRcdWFjZmMgJFIkIFx1ZDNlY1x1ZDU2OClcdWI4NWMgXHVkNTVjXHVjODE1XHViNDE4XHVhY2UwIFx1YWMwNFx1YzEyZCBcdWMyMThcdWNlNTggJFxcZGVsdGEkXHVhYzAwICREJFx1Yzc3YyBcdWI1NGMgXHVhZGY4XHVhYzAwIFx1YmU0Y1x1YjliNCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzFhMVx1YzJlMFx1ZDBkMVx1Yzc1OCBcdWNkNWNcdWIzMDAgXHVhYzFjXHVjMjE4XHViOTdjIFx1YjlhY1x1ZDEzNFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1Yzc3NCBcdWQ1NjhcdWMyMThcdWIyOTQgXHVjODE1XHVkNjU1XHVkNzg4ICRRJFx1YmM4OCBcdWQ2MzhcdWNkOWNcdWI0MWNcdWIyZTQuPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJjdXN0b21fZXhhbXBsZSI6IjxwPlx1YjJlNFx1Yzc0YyBcdWQ2MzhcdWNkOWNcdWM3NDQgXHVjMGRkXHVhYzAxXHVkNTc0XHViY2Y0XHVjNzkwOjxcL3A+XHJcblxyXG48cHJlPlxyXG48Y29kZT5pbml0KDcsIFsxMCwgMjAsIDYwLCA0MCwgNTAsIDMwLCA3MF0pXHJcbjxcL2NvZGU+PFwvcHJlPlxyXG5cclxuPHByZT5cclxuPGNvZGU+bWF4X3Rvd2VycygxLCA1LCAxMClcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48cD5cdWQzMGQgXHViMzg1XHVkMDc0XHViODA5XHVjNzQwIFx1YzFhMVx1YzJlMFx1ZDBkMSAkMSQsICQzJCwgXHVhZGY4XHViOWFjXHVhY2UwICQ1JFx1Yjk3YyBcdWJlNGNcdWI5YjQgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHVjNTQ0XHViNzk4IFx1YWRmOFx1YjliY1x1YzVkMFx1YzExYyBcdWMwYzlcdWNlNjBcdWI0MWMgXHVjMGFjXHViMmU0XHViOWFjXHVhZjM0XHVjNzc0IFx1YmU0Y1x1YjliMCBcdWMxYTFcdWMyZTBcdWQwZDFcdWM3NDQgXHViMDk4XHVkMGMwXHViMGI4XHViMmU0LjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcLzI2MDRjMDZiLTVhOTMtNDEzNy1iNDUxLWVkMDJhYmIyNDI0M1wvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJ3aWR0aDogMzczcHg7IGhlaWdodDogMzg0cHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPiQ0MCBcXGxlIDUwIC0gMTAkXHVjNzc0XHVhY2UwICQzMCBcXGxlIDUwIC0gMTAkXHVjNzc0XHViYmMwXHViODVjIFx1YzFhMVx1YzJlMFx1ZDBkMSAkMyRcdWFjZmMgJDUkXHViMjk0IFx1YzFhMVx1YzJlMFx1ZDBkMSAkNCRcdWI5N2MgXHVjOTExXHVhYzFjIFx1YzFhMVx1YzJlMFx1ZDBkMVx1YzczY1x1Yjg1YyBcdWM3NzRcdWM2YTlcdWQ1NzRcdWMxMWMgXHVjMTFjXHViODVjIFx1ZDFiNVx1YzJlMFx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0LiBcdWMxYTFcdWMyZTBcdWQwZDEgJDEkXHVhY2ZjICQzJFx1Yzc0MCBcdWM5MTFcdWFjMWMgXHVjMWExXHVjMmUwXHVkMGQxICQyJFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NThcdWM1ZWMgXHVjMTFjXHViODVjIFx1ZDFiNVx1YzJlMFx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0LiBcdWMxYTFcdWMyZTBcdWQwZDEgJDEkXHVhY2ZjICQ1JFx1YjI5NCBcdWM5MTFcdWFjMWMgXHVjMWExXHVjMmUwXHVkMGQxICQzJFx1Yzc0NCBcdWM3NzRcdWM2YTlcdWQ1NThcdWM1ZWMgXHVjMTFjXHViODVjIFx1ZDFiNVx1YzJlMFx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0LiAkMyRcdWFjMWNcdWJjZjRcdWIyZTQgXHViMzU0IFx1YjljZVx1Yzc0MCBcdWMxYTFcdWMyZTBcdWQwZDFcdWM3NDQgXHViZTRjXHViOWI0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViYzI5XHViYzk1XHVjNzc0IFx1YzVjNlx1YzczY1x1YmJjMFx1Yjg1YywgXHVkNTY4XHVjMjE4XHViMjk0ICQzJFx1Yzc0NCBcdWI5YWNcdWQxMzRcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cHJlPlxyXG48Y29kZT5tYXhfdG93ZXJzKDIsIDIsIDEwMClcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48cD5cdWJjOTRcdWM3MDRcdWM1ZDAgXHVkM2VjXHVkNTY4XHViNDE4XHViMjk0IFx1YzFhMVx1YzJlMFx1ZDBkMVx1Yzc3NCAkMSRcdWFjMWMgXHViYzE2XHVjNWQwIFx1YzVjNlx1YzczY1x1YmJjMFx1Yjg1YywgXHVkMzBkIFx1YjM4NVx1ZDA3NFx1YjgwOVx1Yzc0MCBcdWM2MjRcdWM5YzEgJDEkXHVhYzFjXHVjNzU4IFx1YzFhMVx1YzJlMFx1ZDBkMVx1YjljYyBcdWJlNGNcdWI5YjQgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHViNTMwXHViNzdjXHVjMTFjIFx1ZDU2OFx1YzIxOFx1YjI5NCAkMSRcdWM3NDQgXHViOWFjXHVkMTM0XHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHByZT5cclxuPGNvZGU+bWF4X3Rvd2VycygwLCA2LCAxNylcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48cD5cdWQzMGQgXHViMzg1XHVkMDc0XHViODA5XHVjNzQwIFx1YzFhMVx1YzJlMFx1ZDBkMSAkMSRcdWFjZmMgJDMkXHVjNzQ0IFx1YmU0Y1x1YjliNCBcdWMyMTggXHVjNzg4XHViMmU0LiAkMjAgXFxsZSA2MCAtIDE3JFx1Yzc3NFx1YWNlMCAkNDAgXFxsZSA2MCAtIDE3JFx1Yzc3NFx1YmJjMFx1Yjg1YyBcdWMxYTFcdWMyZTBcdWQwZDEgJDEkXHVhY2ZjICQzJFx1Yzc0MCBcdWM5MTFcdWFjMWMgXHVjMWExXHVjMmUwXHVkMGQxICQyJFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NThcdWM1ZWMgXHVjMTFjXHViODVjIFx1ZDFiNVx1YzJlMFx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0LiAkMiRcdWFjMWNcdWJjZjRcdWIyZTQgXHViMzU0IFx1YjljZVx1Yzc0MCBcdWMxYTFcdWMyZTBcdWQwZDFcdWM3NDQgXHViZTRjXHViOWI0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViYzI5XHViYzk1XHVjNzc0IFx1YzVjNlx1YzczY1x1YmJjMFx1Yjg1YywgXHVkNTY4XHVjMjE4XHViMjk0ICQyJFx1Yjk3YyBcdWI5YWNcdWQxMzRcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImN1c3RvbV9zYW1wbGVncmFkZXIiOiI8cD5cdWMwZDhcdWQ1MGMgXHVhZGY4XHViODA4XHVjNzc0XHViMzU0XHVjNzU4IFx1Yzc4NVx1YjgyNSBcdWM1OTFcdWMyZGRcdWM3NDAgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1YjJlNDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5saW5lICQxJDogJE4gXFwsIFEkPFwvbGk+XHJcblx0PGxpPmxpbmUgJDIkOiAkSFswXSBcXCwgSFsxXSBcXCwgXFxsZG90cyBcXCwgSFtOIC0gMV0kPFwvbGk+XHJcblx0PGxpPmxpbmUgJDMgKyBqJCAoJDAgXFxsZSBqIFxcbGUgUSAtIDEkKTogJEwgXFwsIFIgXFwsIEQkICgkaiRcdWJjODhcdWM5ZjggXHVjOWM4XHViYjM4XHVjNzQ0IFx1YzcwNFx1ZDU1YyAkTCQsICRSJCwgJEQkXHVjNzg0KTxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YzBkOFx1ZDUwYyBcdWFkZjhcdWI4MDhcdWM3NzRcdWIzNTRcdWIyOTQgXHViMmU0XHVjNzRjIFx1ZDYxNVx1YzJkZFx1YzczY1x1Yjg1YyBcdWIyZjVcdWM3NDQgXHVjZDljXHViODI1XHVkNTVjXHViMmU0OjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPmxpbmUgJDEgKyBqJCAoJDAgXFxsZSBqIFxcbGUgUSAtIDEkKTogJGokXHViYzg4XHVjOWY4IDxjb2RlPm1heF90b3dlcnM8XC9jb2RlPiBcdWQ2MzhcdWNkOWNcdWM3NTggXHViOWFjXHVkMTM0XHVhYzEyPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJjdXN0b21fYXR0YWNobWVudCI6Ijx1bD5cclxuXHQ8bGk+PGEgaHJlZj1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcL2FlYjAwZTE1LTIyZjAtNDIyMy1hNzFhLTIzNjMzMjMwOTNjMlwvXCI+dG93ZXJzLnppcDxcL2E+PFwvbGk+XHJcbjxcL3VsPlxyXG4ifSx7InByb2JsZW1faWQiOiIyNTQ0MCIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IlJhZGlvIFRvd2VycyIsImRlc2NyaXB0aW9uIjoiPHA+VGhlcmUgYXJlICROJCByYWRpbyB0b3dlcnMgaW4gSmFrYXJ0YS4gVGhlIHRvd2VycyBhcmUgbG9jYXRlZCBhbG9uZyBhIHN0cmFpZ2h0IGxpbmUgYW5kIG51bWJlcmVkIGZyb20gJDAkIHRvICROIC0gMSQgZnJvbSBsZWZ0IHRvIHJpZ2h0LiBGb3IgZWFjaCAkaSQgc3VjaCB0aGF0ICQwIFxcbGUgaSBcXGxlIE4gLSAxJCwgdGhlIGhlaWdodCBvZiB0b3dlciAkaSQgaXMgJEhbaV0kIG1ldHJlcy4gVGhlIGhlaWdodHMgb2YgdGhlIHRvd2VycyBhcmUmbmJzcDs8c3Ryb25nPmRpc3RpbmN0PFwvc3Ryb25nPi48XC9wPlxyXG5cclxuPHA+Rm9yIHNvbWUgcG9zaXRpdmUgaW50ZXJmZXJlbmNlIHZhbHVlICRcXGRlbHRhJCwgYSBwYWlyIG9mIHRvd2VycyAkaSQgYW5kICRqJCAod2hlcmUgJDAgXFxsZSBpIFxcbHQgaiBcXGxlIE4gLSAxJCkgY2FuIGNvbW11bmljYXRlIHdpdGggZWFjaCBvdGhlciBpZiBhbmQgb25seSBpZiB0aGVyZSBpcyBhbiBpbnRlcm1lZGlhcnkgdG93ZXIgJGskLCBzdWNoIHRoYXQ8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT50b3dlciAkaSQgaXMgdG8gdGhlIGxlZnQgb2YgdG93ZXIgJGskIGFuZCB0b3dlciAkaiQgaXMgdG8gdGhlIHJpZ2h0IG9mIHRvd2VyICRrJCwgdGhhdCBpcywgJGkgXFxsdCBrIFxcbHQgaiQsIGFuZDxcL2xpPlxyXG5cdDxsaT50aGUgaGVpZ2h0cyBvZiB0b3dlciAkaSQgYW5kIHRvd2VyICRqJCBhcmUgYm90aCBhdCBtb3N0ICRIW2tdIC0gXFxkZWx0YSQgbWV0cmVzLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlBhayBEZW5na2xlayB3YW50cyB0byBsZWFzZSBzb21lIHJhZGlvIHRvd2VycyBmb3IgaGlzIG5ldyByYWRpbyBuZXR3b3JrLiBZb3VyIHRhc2sgaXMgdG8gYW5zd2VyICRRJCBxdWVzdGlvbnMgb2YgUGFrIERlbmdrbGVrIHdoaWNoIGFyZSBvZiB0aGUgZm9sbG93aW5nIGZvcm06IGdpdmVuIHBhcmFtZXRlcnMgJEwsIFIkIGFuZCAkRCQgKCQwIFxcbGUgTCBcXGxlIFIgXFxsZSBOIC0gMSQgYW5kICREICZndDsgMCQpLCB3aGF0IGlzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0b3dlcnMgUGFrIERlbmdrbGVrIGNhbiBsZWFzZSwgYXNzdW1pbmcgdGhhdDxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlBhayBEZW5na2xlayBjYW4gb25seSBsZWFzZSB0b3dlcnMgd2l0aCBpbmRpY2VzIGJldHdlZW4gJEwkIGFuZCAkUiQgKGluY2x1c2l2ZSksIGFuZDxcL2xpPlxyXG5cdDxsaT50aGUgaW50ZXJmZXJlbmNlIHZhbHVlICRcXGRlbHRhJCBpcyAkRCQsIGFuZDxcL2xpPlxyXG5cdDxsaT5hbnkgcGFpciBvZiByYWRpbyB0b3dlcnMgdGhhdCBQYWsgRGVuZ2tsZWsgbGVhc2VzIG11c3QgYmUgYWJsZSB0byBjb21tdW5pY2F0ZSB3aXRoIGVhY2ggb3RoZXIuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+Tm90ZSB0aGF0IHR3byBsZWFzZWQgdG93ZXJzIG1heSBjb21tdW5pY2F0ZSB1c2luZyBhbiBpbnRlcm1lZGlhcnkgdG93ZXIgJGskLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdG93ZXIgJGskIGlzIGxlYXNlZCBvciBub3QuPFwvcD5cclxuIiwiaW5wdXQiOiIiLCJvdXRwdXQiOiIiLCJoaW50IjoiIiwib3JpZ2luYWwiOiIxIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJFbmdsaXNoIiwibGltaXQiOiI8dWw+XHJcblx0PGxpPiQxIFxcbGUgTiBcXGxlIDEwMFxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDEgXFxsZSBRIFxcbGUgMTAwXFwsMDAwJDxcL2xpPlxyXG5cdDxsaT4kMSBcXGxlIEhbaV0gXFxsZSAxMF45JCAoZm9yIGVhY2ggJGkkIHN1Y2ggdGhhdCAkMCBcXGxlIGkgXFxsZSBOIC0gMSQpPFwvbGk+XHJcblx0PGxpPiRIW2ldIFxcbmUgSFtqXSQgKGZvciBlYWNoICRpJCBhbmQgJGokIHN1Y2ggdGhhdCAkMCBcXGxlIGkgXFxsdCBqIFxcbGUgTiAtIDEkKTxcL2xpPlxyXG5cdDxsaT4kMCBcXGxlIEwgXFxsZSBSIFxcbGUgTiAtIDEkPFwvbGk+XHJcblx0PGxpPiQxIFxcbGUgRCBcXGxlIDEwXjkkPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJzdWJ0YXNrMSI6IjxwPlRoZXJlIGV4aXN0cyBhIHRvd2VyICRrJCAoJDAgXFxsZSBrIFxcbGUgTiAtIDEkKSBzdWNoIHRoYXQ8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5mb3IgZWFjaCAkaSQgc3VjaCB0aGF0ICQwXFxsZSBpXFxsZSBrLTEkOiAkSFtpXSBcXGx0IEhbaSArIDFdJCwgYW5kPFwvbGk+XHJcblx0PGxpPmZvciBlYWNoICRpJCBzdWNoIHRoYXQgJGsgXFxsZSBpIFxcbGUgTiAtIDIkOiAkSFtpXSBcXGd0IEhbaSArIDFdJC48XC9saT5cclxuPFwvdWw+XHJcbiIsInN1YnRhc2syIjoiPHA+JFEgPSAxJCwgJE4gXFxsZSAyMDAwJDxcL3A+XHJcbiIsInN1YnRhc2szIjoiPHA+JFEgPSAxJDxcL3A+XHJcbiIsInN1YnRhc2s0IjoiPHA+JEQgPSAxJDxcL3A+XHJcbiIsInN1YnRhc2s1IjoiPHA+JEwgPSAwJCwgJFIgPSBOIC0gMSQ8XC9wPlxyXG4iLCJzdWJ0YXNrNiI6IjxwPlRoZSB2YWx1ZSBvZiAkRCQgaXMgdGhlIHNhbWUgYWNyb3NzIGFsbCZuYnNwOzxjb2RlPm1heF90b3dlcnM8XC9jb2RlPiZuYnNwO2NhbGxzLjxcL3A+XHJcbiIsInN1YnRhc2s3IjoiPHA+Tm8gYWRkaXRpb25hbCBjb25zdHJhaW50cy48XC9wPlxyXG4iLCJjdXN0b21faW1wbGVtZW50YXRpb24iOiI8cD5Zb3Ugc2hvdWxkIGltcGxlbWVudCB0aGUgZm9sbG93aW5nIHByb2NlZHVyZXM6PFwvcD5cclxuXHJcbjxwcmU+XHJcbjxjb2RlPnZvaWQgaW5pdChpbnQgTiwgaW50W10gSClcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48dWw+XHJcblx0PGxpPiROJDogdGhlIG51bWJlciBvZiByYWRpbyB0b3dlcnMuPFwvbGk+XHJcblx0PGxpPiRIJDogYW4gYXJyYXkgb2YgbGVuZ3RoICROJCBkZXNjcmliaW5nIHRoZSB0b3dlciBoZWlnaHRzLjxcL2xpPlxyXG5cdDxsaT5UaGlzIHByb2NlZHVyZSBpcyBjYWxsZWQgZXhhY3RseSBvbmNlLCBiZWZvcmUgYW55IGNhbGxzIHRvIDxjb2RlPm1heF90b3dlcnM8XC9jb2RlPi48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cHJlPlxyXG48Y29kZT5pbnQgbWF4X3Rvd2VycyhpbnQgTCwgaW50IFIsIGludCBEKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjx1bD5cclxuXHQ8bGk+JEwkLCAkUiQ6IHRoZSBib3VuZGFyaWVzIG9mIGEgcmFuZ2Ugb2YgdG93ZXJzLjxcL2xpPlxyXG5cdDxsaT4kRCQ6IHRoZSB2YWx1ZSBvZiAkXFxkZWx0YSQuPFwvbGk+XHJcblx0PGxpPlRoaXMgcHJvY2VkdXJlIHNob3VsZCByZXR1cm4gdGhlIG1heGltdW0gbnVtYmVyIG9mIHJhZGlvIHRvd2VycyBQYWsgRGVuZ2tsZWsgY2FuIGxlYXNlIGZvciBoaXMgbmV3IHJhZGlvIG5ldHdvcmsgaWYgaGUgaXMgb25seSBhbGxvd2VkIHRvIGxlYXNlIHRvd2VycyBiZXR3ZWVuIHRvd2VyICRMJCBhbmQgdG93ZXIgJFIkIChpbmNsdXNpdmUpIGFuZCB0aGUgdmFsdWUgb2YgJFxcZGVsdGEkIGlzICREJC48XC9saT5cclxuXHQ8bGk+VGhpcyBwcm9jZWR1cmUgaXMgY2FsbGVkIGV4YWN0bHkgJFEkIHRpbWVzLjxcL2xpPlxyXG48XC91bD5cclxuIiwiY3VzdG9tX2V4YW1wbGUiOiI8cD5Db25zaWRlciB0aGUgZm9sbG93aW5nIHNlcXVlbmNlIG9mIGNhbGxzOjxcL3A+XHJcblxyXG48cHJlPlxyXG48Y29kZT5pbml0KDcsIFsxMCwgMjAsIDYwLCA0MCwgNTAsIDMwLCA3MF0pXHJcbjxcL2NvZGU+PFwvcHJlPlxyXG5cclxuPHByZT5cclxuPGNvZGU+bWF4X3Rvd2VycygxLCA1LCAxMClcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48cD5QYWsgRGVuZ2tsZWsgY2FuIGxlYXNlIHRvd2VycyAkMSQsICQzJCwgYW5kICQ1JC4gVGhlIGV4YW1wbGUgaXMgaWxsdXN0cmF0ZWQgaW4gdGhlIGZvbGxvd2luZyBwaWN0dXJlLCB3aGVyZSBzaGFkZWQgdHJhcGV6b2lkcyByZXByZXNlbnQgbGVhc2VkIHRvd2Vycy48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC8yNjA0YzA2Yi01YTkzLTQxMzctYjQ1MS1lZDAyYWJiMjQyNDNcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwid2lkdGg6IDM3M3B4OyBoZWlnaHQ6IDM4NHB4O1wiIFwvPjxcL3A+XHJcblxyXG48cD5Ub3dlcnMgJDMkIGFuZCAkNSQgY2FuIGNvbW11bmljYXRlIHVzaW5nIHRvd2VyICQ0JCBhcyBhbiBpbnRlcm1lZGlhcnksIHNpbmNlICQ0MCBcXGxlIDUwIC0gMTAkIGFuZCAkMzAgXFxsZSA1MCAtIDEwJC4gVG93ZXJzICQxJCBhbmQgJDMkIGNhbiBjb21tdW5pY2F0ZSB1c2luZyB0b3dlciAkMiQgYXMgYW4gaW50ZXJtZWRpYXJ5LiBUb3dlcnMgJDEkIGFuZCAkNSQgY2FuIGNvbW11bmljYXRlIHVzaW5nIHRvd2VyICQzJCBhcyBhbiBpbnRlcm1lZGlhcnkuIFRoZXJlIGlzIG5vIHdheSB0byBsZWFzZSBtb3JlIHRoYW4gJDMkIHRvd2VycywgdGhlcmVmb3JlIHRoZSBwcm9jZWR1cmUgc2hvdWxkIHJldHVybiAkMyQuPFwvcD5cclxuXHJcbjxwcmU+XHJcbjxjb2RlPm1heF90b3dlcnMoMiwgMiwgMTAwKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjxwPlRoZXJlIGlzIG9ubHkgJDEkIHRvd2VyIGluIHRoZSByYW5nZSwgdGh1cyBQYWsgRGVuZ2tsZWsgY2FuIG9ubHkgbGVhc2UgJDEkIHRvd2VyLiBUaGVyZWZvcmUgdGhlIHByb2NlZHVyZSBzaG91bGQgcmV0dXJuICQxJC48XC9wPlxyXG5cclxuPHByZT5cclxuPGNvZGU+bWF4X3Rvd2VycygwLCA2LCAxNylcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48cD5QYWsgRGVuZ2tsZWsgY2FuIGxlYXNlIHRvd2VycyAkMSQgYW5kICQzJC4gVG93ZXJzICQxJCBhbmQgJDMkIGNhbiBjb21tdW5pY2F0ZSB1c2luZyB0b3dlciAkMiQgYXMgYW4gaW50ZXJtZWRpYXJ5LCBzaW5jZSAkMjAgXFxsZSA2MCAtIDE3JCBhbmQgJDQwIFxcbGUgNjAgLSAxNyQuIFRoZXJlIGlzIG5vIHdheSB0byBsZWFzZSBtb3JlIHRoYW4gJDIkIHRvd2VycywgdGhlcmVmb3JlIHRoZSBwcm9jZWR1cmUgc2hvdWxkIHJldHVybiAkMiQuPFwvcD5cclxuIiwiY3VzdG9tX3NhbXBsZWdyYWRlciI6IjxwPlRoZSBzYW1wbGUgZ3JhZGVyIHJlYWRzIHRoZSBpbnB1dCBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5saW5lICQxJDogJE4gXFwsIFEkPFwvbGk+XHJcblx0PGxpPmxpbmUgJDIkOiAkSFswXSBcXCwgSFsxXSBcXCwgXFxsZG90cyBcXCwgSFtOIC0gMV0kPFwvbGk+XHJcblx0PGxpPmxpbmUgJDMgKyBqJCAoJDAgXFxsZSBqIFxcbGUgUSAtIDEkKTogJEwgXFwsIFIgXFwsIEQkIGZvciBxdWVzdGlvbiAkaiQ8XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5UaGUgc2FtcGxlIGdyYWRlciBwcmludHMgeW91ciBhbnN3ZXJzIGluIHRoZSBmb2xsb3dpbmcgZm9ybWF0OjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPmxpbmUgJDEgKyBqJCAoJDAgXFxsZSBqIFxcbGUgUSAtIDEkKTogdGhlIHJldHVybiB2YWx1ZSBvZiA8Y29kZT5tYXhfdG93ZXJzPFwvY29kZT4gZm9yIHF1ZXN0aW9uICRqJDxcL2xpPlxyXG48XC91bD5cclxuIiwiY3VzdG9tX2F0dGFjaG1lbnQiOiI8dWw+XHJcblx0PGxpPjxhIGhyZWY9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC9hZWIwMGUxNS0yMmYwLTQyMjMtYTcxYS0yMzYzMzIzMDkzYzJcL1wiPnRvd2Vycy56aXA8XC9hPjxcL2xpPlxyXG48XC91bD5cclxuIn1d

샘플 그레이더

샘플 그레이더의 입력 양식은 다음과 같다:

  • line $1$: $N \, Q$
  • line $2$: $H[0] \, H[1] \, \ldots \, H[N - 1]$
  • line $3 + j$ ($0 \le j \le Q - 1$): $L \, R \, D$ ($j$번째 질문을 위한 $L$, $R$, $D$임)

샘플 그레이더는 다음 형식으로 답을 출력한다:

  • line $1 + j$ ($0 \le j \le Q - 1$): $j$번째 max_towers 호출의 리턴값

첨부

출처

Olympiad > International Olympiad in Informatics > IOI 2022 > Day 1 3번

  • 문제를 만든 사람: Kevin Luiz Ponte Pucci

제출할 수 있는 언어

C++17, C++20, C++17 (Clang), C++20 (Clang)

채점 및 기타 정보

  • 예제는 채점하지 않는다.
  • 이 문제의 채점 우선 순위는 2이다.