Кайтадан биттер және сұраулар


Шешімді жөнелту

Ұпайлар: 100 (partial)
Уақыт шектеуі: 2.0s
Жад шектеуі: 256M

Author:
Problem type
Рұқсат етілген тілдер
Assembly, Awk, Brain****, C, C++, Java, Pascal, Perl, Python, Sed, Text

\(b_1, b_2, \dots, b_n\) (\(n > 1\)) массивінің сұлулығы деп барлық \(i, j\) (\(1 \leq i < j \leq n\)) жұптары үшін \(|b_i - b_j|\) минималды мәнін айтамыз, мұнда \(b_i\) және \(b_j\) массив элементтері болып табылады.

Сізге ұзындығы \(n\) болатын, \(a_1, a_2, \dots, a_n\) бүтін сандар тізбегі берілген. Сонымен қатар, \(q\) сұраулар бар, олардың әрқайсысы екі бүтін \(x\) және \(k\) сандарымен сиппаталады.

Әр сұрау \((x, k)\) үшін сізге келесі әрекеттерді орындау қажет:

  • \(b\) массивің құру. Ол \(x\) санынан дәл \(k\) битке ерекшеленетің \(a\)-ның барлық элементтерінен тұрады.

  • \(b\) массивінің сұлулығын табу, яғни \(b_i\) және \(b_j\) элементтерінің барлық жұптары үшін \(|b_i - b_j|\) минималды мәнін есептеу.

  • Егер \(b\) массивіндегі элементтер саны екіден аз болса, онда массивтің сұлулығы \(-1\) деп есептеледі.

Сізге барлық \(q\) сұрауларға жауап беру қажет. Әр сұрауға жауаптар берілген ретімен шығарылуы керек.

Енгізу

Бірінші жолда екі бүтін сан \(n\) және \(q\) (\(1 \leq n \leq 2^{17}\), \(1 \leq q \leq 10^6\)) — массив \(a\) өлшемі және сұраулар саны.

Екінші жолда \(n\) бүтін сандар \(a_1, a_2, \dots, a_n\) (\(0 \leq a_i < 2^{17}\)) — массив элементтері.

Келесі \(q\) жолдың әрқайсысында екі бүтін сан \(x\) және \(k\) (\(0 \leq x < 2^{17}\), \(0 \leq k \leq 17\)) — сұрау параметрлері.

Шығару

Әр сұрау үшін, барлығы \(q\) сұрауға, бір бүтін санды шығарыңыз — осы сұрауға сәйкес келетін \(b\) массивінің сұлулығы.

Егер \(b\) массивінде екіден аз элемент болса, \(-1\) шығарыңыз.

Бағалау жүйесі

| Қосымша тапсырма | Қосымша шектеулер | Ұпай | Қажетті қосымша тапсырмалар | |:--------------------:|:---------------------:|:--------:|:-------------------------------:| | \(1\) | \(q = 1\) | \(12\) | — | | \(2\) | \(a_i < 2^{10}\) | \(14\) | — | | \(3\) | \(a_i = i - 1\) | \(22\) | — | | \(4\) | Қосымша шектеулер жоқ | \(52\) | \(1, 2, 3\) |

Мысалдар

Енгізу 1
9 6
1 2 3 4 5 6 7 8 7
0 1
0 2
3 1
15 2
26 3
1 3
Жауап 1
1
1
0
1
3
-1

Пікірлер

Қазіргі уақытта ешқандай пікір жоқ.