# CSGO Lounge has a 'No Winnings' problem

CSGO Lounge is a website on which you can bet virtual items on the results of CS:GO games.

It has a major flaw in that you can win, but end up with no winnings. This has happened to me a few times and the forums are full of people complaining their (relatively large) bets won but returned no winnings.

CSGOL justifies this by saying the entire bet is zero sum, and as items can't be broken down into smaller units, they have to fit items to winnings as best as possible to the odds so there will be some 'rounding error' and some people will lose out by their winnings being undervalued according to the odds CSGOL gave when they made the bet.

I strongly suspect that this is a bit misleading and the main cause of the error is not the inability to break down the items, but the difficulty in solving the distribution problem accurately.

The problem of distributing winnings can be stated something like: Given that you have a set of items with individual value, and a set of people who each demand a total value, organise the item set into subsets such that every item belongs to exactly one subset, and each subset can be uniquely allocated to exactly one person.

This sounds like a harder version of the subset sum problem, which is already NP-complete. In layman's terms, this means that it's really hard to solve because it requires infeasible amounts of CPU power to do it. With few items you can use brute force algorithms to try all combinations and choose the best one, but as the number of items grows larger it will take thousands of years to run the fastest correct algorithm.

Therefore to get a solution reasonably quickly you use probabilistic algorithms that hopefully give you a decent solution in x% of cases.

Now, we don't know what algorithm CSGO Lounge uses, but we do know that the overall website is pretty amateurish. Making the website work well is pretty simple and any semi-professional software developer could do it. Solving the distribution problem is hard and requires much more specialised computer science/maths skills. It would be very surprising if they were bad at the easy part and good at the hard part.

More likely, their redistribution algorithm is bad and it can't give sensible results for the amount of volume the site gets. It's also worth noting that there appears to be no public audit trail for how the items are distributed, so we don't actually know that the bet really is zero-sum and that CSGOLounge really is allocating every item it receives.

Either way, the site is currently not fit for purpose and I strongly recommend against using it.

## Talk is cheap