Permutation Index
Simple
English

The mission is an idea of przemyslaw.daniel .

Let’s imagine a list of all the permutations of a given set. Every item on the list has it’s index (starting from 1). The task is to calculate the permutation index.

You are given a tuple of integers. It represents one of the permutations of the consecutive integers (starting from 0). You have to return the permutation index of the tuple.

For example

• Input: (1, 2, 0)
• All the consecutive permutations are:
1. (0, 1, 2)
2. (0, 2, 1)
3. (1, 0, 2)
4. (1, 2, 0) !!!
5. (2, 0, 1)
6. (2, 1, 0)
• Output: 4

Example:

```assert permutation_index((2, 0, 1)) == 5
assert permutation_index((2, 1, 3, 0, 4, 5)) == 271
```

Input: One of the permutations of the consecutive integers (a tuple of integers).

Output: The permutation index (an integer).

Precondition:

• sorted(input) == list(range(len(input)))
Settings
Code:
CheckiO Extensions

CheckiO Extensions allow you to use local files to solve missions. More info in a blog post.

In order to install CheckiO client you'll need installed Python (version at least 3.8)

Install CheckiO Client first:

`pip3 install checkio_client`

`checkio --domain=py config --key=`

Sync solutions into your local folder

`checkio sync`

(in beta testing) Launch local server so your browser can use it and sync solution between local file end extension on the fly. (doesn't work for safari)

`checkio serv -d`

Alternatevly, you can install Chrome extension or FF addon

`checkio install-plugin`
`checkio install-plugin --ff`
`checkio install-plugin --chromium`

Read more here about other functionality that the checkio client provides. Feel free to submit an issue in case of any difficulties.

Sync...