The Secret Room

The Secret Room

Elementary+
Here you are in the castle. Despite the fact that it’s already about 200 years old, it doesn’t look like an ancient ruin at all. In the great hall (of a very odd geometrical form) you’re seeing the following: - a beautiful spiral staircase leading to the 2nd floor; - an equally attractive staircase that leads into the dungeon; - a lot of doors of a wide variety of different shapes, colors and designs. Having decided to explore the doors on this floor first, you’ve assumed that the most interesting things should be in the very last room. However, finding it won’t be as easy as it seems.

Before going on this trip, you’ve gathered some information about the Lord Escher's quirks. One of them was a very unusual numbering of doors - he numbered them according to how the numbers go in the alphabetical order. For example, if there were five doors positioned from left to right, they were numbered as: five, four, one, three, two (instead of a completely logical numeration - 1, 2, 3, 4, 5). Thus, the very last door was actually the leftmost, not the very right one, as it might be assumed. Your task is to find the very last door.

As input your function will receive an integer - the total number of doors in the current room. You will need to sort the door numbers in the order in which these numbers, expressed in words, go in the alphabetical order. And then return the position number of the last door (the door with the highest number). The count starts from the 1st position (not from the 0th). The maximum number of doors is 1000. The numbers after 100 are written in the format like - 'one hundred twenty nine'.

Input: the door number.

Output: the 'right' door number.

Example:

secret_room(5) == 1, #five, four, one, three, two
secret_room(3) == 2, #one, three, two
secret_room(1000) == 551

How it is used: For the work with numbers in their alphabetical representation.

Precondition :
2 <= amount of the doors <= 1000

Settings
Code:
Other:
Invalid hot key. Each hot key should be unique and valid
Hot keys:
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

Configure your tool

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.

Pair Programming (Beta-version)

Welcome to Pair Programming! Engage in real-time collaboration on coding projects by starting a session and sharing the provided unique URL with friends or colleagues. This feature is perfect for joint project development, debugging, or learning new skills together. Simply click 'Start Session' to begin your collaborative coding journey!

Waiting for Pair Programming to start...

You are trying to join a pair programming session that has not started yet.

Please wait for the session creator to join.

Waiting for Pair Programming to reconnect...

It looks like the creator of the pair programming session closed the editor window.

It might happen accidentally, so that you can wait for reconnection.

×
 
 
<< <
> >>
exec show

Whats Next?

Free accounts will see Best CheckiO solutions with some delay.
Best Solutions will be opened in a moment
Become Awesome and Don't wait
The next stage is ""
Will be activated in
View More Solutions Random Review Solutions Go to the next mission