OPCPIZZA - Pizzamania

Singham and his friends are fond of pizza. But this time they short of money. So they decided to help each other. They all decided to bring pizza in pairs. Our task is to find the total number of pairs possible which can buy pizza, given the cost of pizza. As pizza boy dont have any cash for change, if the pair adds upto more money than required, than also they are unable to buy the pizza. Each friend is guaranteed to have distinct amount of money. As it is Singham's world, money can also be negative ;).


The first line consist of t (1 <= t <= 100) test cases. In the following 2*t lines, for each test case first there is n and m, where n (1 <= n <= 100000) is number of Singham's friend and m is the price of pizza. The next line consist of n integers, seperated by space, which is the money each friend have. 

The value of m and money is within the limits of int in C, C++.


A single integer representing the number of pairs which can eat pizza.


Sample Input:
4 12
9 -3 4 3
5 -9
-7 3 -2 8 7

Sample Output:

hide comments
tarun_28: 2020-01-01 18:11:36

they all have 'distinct' amount of money;)

iqrar99: 2019-10-08 06:18:16

I keep getting TLE using Java. I'm using binary search but it's still TLE. My algorithm is same as many people who got AC here. I already use BufferedReader to read input. what should I fix?

jonmanu: 2018-10-23 21:52:09

can anyone please explain: how is this a question of binary search?
i solved it using two pointer approach.

Last edit: 2018-10-23 21:52:58
phoemur: 2018-09-08 04:17:49

Why the solutions for
8 10
9 9 1 1 1 1 1 1

8 10
1 1 9 9 9 9 9 9

are different ?

Edit: Sorry. Each friend is guaranteed to have distinct amount of money

Last edit: 2018-09-08 04:39:15
rohitnarayan: 2018-06-21 20:09:20

This problem has large inputs. Either use scanf or use ios_base statement with cin/cout

pratikrahul: 2018-05-19 18:49:59

O(nlogn+n) got AC.......where the hell was the binary search??

ankur314: 2018-05-15 05:31:35

after a series of TLE, finally binary search gave AC!

ragh_1995: 2018-04-03 09:20:25

It's getting tle in java
while same code in c++ accepted.

pynoob01: 2018-01-13 01:36:03

I keep getting TLE with both using sets as well as using two pointers. Is it because I am using Python?

sameer_hack: 2017-12-06 23:04:54

Delete it.

Last edit: 2017-12-06 23:10:07

Added by:! include(L.ppt)
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:MNNIT OPC 31-08-2012