Cody

# Problem 840. SET (the card game)

SET is a card game in which players try to find valid 3-card sets from 12 cards on the table. What makes a valid set? Every card has four features, each with three possible values. In a valid set, each of the features, when looked at individually, are either the same on each card OR different on each card.

In this problem, you are given a 12x4 matrix representing 12 cards (rows) with 4 features (columns) each. The N-th row corresponds to the N-th card. Each feature has a value of 0, 1, or 2. Create a function that returns an Mx3 matrix of all valid sets, where each row is a set and each column is the index to a card in the set. For every set, the cards (columns) should be arranged in ascending order. If there are no valid sets for a given input, return []. You may assume that all cards are unique.

Example

```cards = [1 0 1 0
1 1 1 1
2 2 1 0
0 1 2 2
2 1 1 1
1 0 1 2
0 0 0 0
2 2 2 2
0 2 0 0
1 1 1 0
0 1 0 2
0 2 0 2];
```

returns

```sets = [2 7 8
6 8 11]
```

because there are two valid sets. Cards 2,7, and 8 make one set and cards 6,8, and 11 form another set. Notice that a card can be a part of more than one set.

### Solution Stats

59.0% Correct | 41.0% Incorrect
Last solution submitted on Sep 18, 2019