Work Schedule Generator
Sie erhalten eine Reihe von Mitarbeitern mit deren Arbeitsvorlieben und Fähigkeiten. Außerdem haben Sie geschäftliche Anforderungen in Bezug auf die erforderliche Arbeitszeit und die Aufgaben. Ihre Funktion sollte einen Zeitplan zurückgeben, der die geschäftlichen Anforderungen mit den verfügbaren Mitarbeitern erfüllt (wenn das möglich ist). Lassen Sie uns nun in die Details gehen.
staff ist ein dictionary, wobei die Schlüssel Namen von Mitarbeitern und die Werte dictionaries sind. Jedes Werte wörterbuch enthält drei Schlüssel-Wert-Paare:
- "pref_shifts" - list of strings: shifts, employee wants to work at (kann "first", "second" oder beides in dieser Reihenfolge sein);
- "days_off" - list of strings: Tage, an denen der Mitarbeiter frei haben möchte (vollständige Namen der Wochentage);
- "skills" - list of strings: Jobs, die der Mitarbeiter machen darf.
business_needs ist ein list von drei Werten: ein Wochentag, für den ein Zeitplan erstellt werden soll - string; Anzahl der Schichten, die an diesem Tag sein sollen - integer; Aufgaben, die an diesem Tag erledigt werden sollen - list von strings.
Hinweis zu den Schichten. Jeder Mitarbeiter kann in der ersten Schicht, in der zweiten Schicht oder in beiden Schichten (ganztägig) arbeiten, außer an seinen freien Tagen. Die Anzahl der Schichten für ein Unternehmen bedeutet die Anzahl der verschiedenen Schichten, die an diesem Tag vorhanden sind. Wenn die Anzahl der Schichten 3 beispielsweise von einem Mitarbeiter abgedeckt wird, der den ganzen Tag arbeitet (seine beiden Schichten, "erste" und "zweite", insgesamt - 2) und einem weiteren Mitarbeiter (denn jeder Mitarbeiter hat mindestens eine Schicht), oder von drei Schichten eines anderen Mitarbeiters. Die Anzahl der Schichten sollte zu gleichen Teilen auf "first" und "second" aufgeteilt werden. Wenn die Anzahl der Schichten ungerade ist (und nicht gleich 1), muss "first" Tagesschicht eine Schicht mehr enthalten als "second" Tagesschicht.
Die Fähigkeiten können bei verschiedenen Mitarbeitern teilweise/vollständig gleich sein. Wenn Sie also die Tagesschichten besetzen, wählen Sie Mitarbeiter mit einer geringeren Anzahl von Fähigkeiten - sie werden in der Regel schlechter bezahlt. Wenn die Anzahl gleich ist, wählen Sie alphabetisch nach Namen aus. Aus der Sicht der Mitarbeiter hat die erste Tagesschicht Vorrang: Es ist wichtiger, dass dort Mitarbeiter mit weniger Fähigkeiten eingesetzt werden. Die Aufgaben sind eine...
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.
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!
You are trying to join a pair programming session that has not started yet.
Please wait for the session creator to join.
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.