Code360 powered by Coding Ninjas X Naukri.com. Code360 powered by Coding
Ninjas X Naukri.com

Problem of the day

You have 'N' cakes of different names. You want to choose exactly 3 cakes out of these 'N' cakes. The name of the ith cake is 'S[i]' (0 <= i < 'N'). The three chosen cakes should follow the following conditions.

```
The name of the cake should start with 'c', 'a', 'k', 'e', or 's'.
No two cakes should begin with the same letter.
```

Return the number of ways to choose three cakes irrespective of the order.

Note : Assume 0-based indexing.

```
Let 'N' = 4, S = ["choco", "apple", "kesar", "strawberry"].
There exist 4 different ways to choose three cakes following all the required conditions i.e. {"choco", "apple", "kesar"}, {"choco", "apple", "strawberry"}, {"choco", "strawberry", "kesar"}, {"strawberry", "apple", "kesar"}.
```

Detailed explanation

```
The first line contains an integer 'T', which denotes the number of test cases.
For every test case:-
The first line contains only one integer 'N' the number of cakes.
The second line contains 'N' space-separated strings denoting the elements of the 'S'.
```

```
For each test case, return the number of ways to choose three cakes irrespective of the order.
```

```
You don’t need to print anything. Just implement the given function.
```

```
1 <= 'T' <= 10
1 <= 'N' <= 10^4
0 <= |S[i]| <= 10
All the names of cakes are distinct and consist of lowercase letters.
Time Limit: 1 sec
```

```
2
4
apple kesar strawberry peach
2
apple kesar
```

```
1
0
```

```
'N' = 4, S = ["apple", "kesar", "strawberry", "peach"].
There exists only one way to choose three cakes following all the required conditions i.e. {"strawberry", "apple", "kesar"}. So, the answer is 1.
Second test case:-
'N' = 2, S = ["apple", "kesar"]. As 'N' is less than 3, So there is no way to choose the three cakes. Hence, the answer is 0.
```

```
2
5
apple kesar strawberry peach almond
1
apple
```

```
2
0
```