Keys and Locks Keys and Locks
Simple
JA RU English
Going up to the door you’ve noticed the case that was standing next to it - it was piled high with the keys of all shapes and sizes. Yes, Lord Escher definitely loved puzzles and difficulties. When you’ve attempted to open the door, you discovered with no particular surprise that it was closed. Well, let's find the right key and move on.

As input you are getting two multi-line strings - one is a schematic image of the keyhole, the second - of the key. Your task is to return True if the key fits the lock and False if otherwise. The key and keyhole are represented by the '#' symbols, and '0' shows the empty space around the key and the door material around the keyhole. Pay attention that the key and keyhole can be displayed both vertically and horizontally.

Input: The key and lock representation as multilines string.

Output: True or False.

Example:

keys_and_locks('''
0##0
0##0
00#0
00##
00##''',
'''
00000
000##
#####
##000
00000''') == True

How it is used: To determine the correspondence of objects to each other.

Precondition :
size of key and lock <= 10x10

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

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.

×
 
 
<< <
> >>
exec

Whats Next?

Free accounts will see Best CheckiO solutions with some delay.
Best Solutions will be opened in
Become Awesome and Don't wait
The next stage is ""
Will be activated in
View More Solutions Random Review Solutions Share your own solution
Go to the next mission Back to the list of missions Back to the map