아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Обезвреживание бомбы

면접 대비

시간 제한2초메모리 제한1024 MB

요약
활성 상태인 두 버튼의 합이 정확히 k가 되는 쌍이 없도록 최소 개수의 버튼을 누른다.
난이도

보통10점 중 5점

유형
해시맵, 그리디, 정렬
정답자
아직 제출이 없습니다

문제

В городе Найт-Сити творится много страшных событий. Прямо сейчас Ви рискует жизнью, чтобы обезвредить бомбу в самом центре региона Уотсон.

Быстро изучив бомбу, Ви заметил, что на ней есть ровно nn кнопок, на каждой из которых написано натуральное число. Любая кнопка может быть в активном и неактивном состоянии, переключение состояния происходит по нажатию, которое занимает ровно одну секунду. Изначально все кнопки находятся в активном состоянии.

От доверенного информатора Ви знает, что бомба взорвется если и только если на момент конца обратного отчета на ней найдутся две кнопки в активном состоянии с суммой чисел на них ровно kk. Разумеется, его интересует, за какое минимальное время бомбу можно обезвредить.

Свой мозговой имплант для быстрых вычислений Ви повредил повредил на прошлом задании, и теперь ему нужна ваша помощь, чтобы узнать какое минимальное количество нажатий кнопок придется совершить, чтобы бомба не взорвалась.

입력

В первой строке даны два целых числа nn и kk (1≤n≤100,0001 \le n \le 100\\,000, 1≤k≤1091 \le k \le 10^9).

В следующей строке даны nn чисел, которые написаны на кнопках (1≤a_i≤1091 \le a\_i \le 10^9).

출력

Выведите единственное число --- минимальное количество нажатий на кнопки, необходимое для обезвреживания бомбы.

예제2

  1. 예제 1

    입력
    5 100
    77 23 45 54 22
    
    예상 출력
    1
    
  2. 예제 2

    입력
    7 7
    4 3 4 8 4 3 4
    
    예상 출력
    2