概要

問題の条件を整理して簡単にしてみましょう.

問題原案:uni_kakurenbo

解説

整数 aa についての条件 axK|a - x| \leq K を考えます.

数直線をイメージするとよいです.
これは,xx を中央とした幅が 2K2K の閉区間に aa が含まれることと等しいです.

整数 ll に対して, li<rl \leq i < r なる任意の整数 ii について AiA_i が上記の条件を満たすような xx が存在する最大の整数 rrRlR_l とします.

A=(A1,A2,,AN)A = (A_1, A_2, \ldots, A_N) を昇順に並び替えると,RlR_lll に関して広義単調増加となりますから,尺取り法の要領で ll の昇順に RlR_l を求めることができます.

このとき,RllR_l - l の最大値が答えです.

解説:uni_kakurenbo

実装例

C++
Python