| Title: | Distributes Teachers Lessons On Days in a Balanced Manner | 
| Version: | 0.1.3 | 
| Description: | The set of teacher/class lessons is completed with a column that allocates a day to each lesson, so that the distribution of lessons by day, by class, and by teacher is as uniform as possible. https://vlad.bazon.net/. | 
| License: | MIT + file LICENSE | 
| Encoding: | UTF-8 | 
| Language: | ro | 
| RoxygenNote: | 7.3.2 | 
| Depends: | R (≥ 3.5.0) | 
| LazyData: | true | 
| Imports: | dplyr, magrittr, purrr, rlang, stats | 
| Suggests: | knitr, rmarkdown | 
| VignetteBuilder: | knitr | 
| NeedsCompilation: | no | 
| Packaged: | 2025-05-20 14:20:53 UTC; vb | 
| Author: | Vlad Bazon [aut, cre] | 
| Maintainer: | Vlad Bazon <vlad.bazon@gmail.com> | 
| Repository: | CRAN | 
| Date/Publication: | 2025-05-20 14:40:02 UTC | 
days2lessons: Distributes Teachers Lessons On Days in a Balanced Manner
Description
The set of teacher/class lessons is completed with a column that allocates a day to each lesson, so that the distribution of lessons by day, by class, and by teacher is as uniform as possible. https://vlad.bazon.net/.
Author(s)
Maintainer: Vlad Bazon vlad.bazon@gmail.com
Pipe operator
Description
See magrittr::%>% for details.
Usage
lhs %>% rhs
Arguments
| lhs | A value or the magrittr placeholder. | 
| rhs | A function call using the magrittr semantics. | 
Value
The result of calling rhs(lhs).
Lecții (inclusiv cuplaje) pentru o săptămână de lucru într-o școală.
Description
Set numit 'LSS' de 870 lecții prof|cls (cu 66 profesori din care 4 cuplaje și cu 32 clase). Pe săptămână, profesorii din 'LSS' au între 1 și 28 de lecții, iar clasele între 25 și 31 de ore.
Usage
LSS
Format
- prof
- Cod de 3 sau 6 caractere, reprezentând un profesor, respectiv un cuplaj (doi profesori, pe grupe ale unei clase); primele două litere abreviază disciplina pe care este încadrat profesorul, iar cifra care urmează indexează profesorii de pe aceeași disciplină 
- cls
- Clasa (două sau trei caractere) la care profesorul are de făcut o lecție 
Exemplu de tuplaje; lecțiile dintr-un tuplaj au a se desfășura simultan.
Description
Set numit 'TPL', conținând 27 de tuplaje asociate setului 'LSS'. Un tuplaj va angaja într-un același moment (zi și oră), doi (sau trei) profesori și două (respectiv, trei) clase (după anumite criterii, elevii reuniți ai claselor respective sunt redistribuiți ad-hoc în noi "clase", în locul și cu numele celor inițiale). De separat cu câte un spațiu, profesorii, respectiv clasele tuplajului. Atenție: considerăm că niciun profesor "extern" (fără ore proprii, ci numai în cuplaje) NU poate face parte din vreun tuplaj.
Usage
TPL
Format
- prof
- Profesorii care trebuie să intre în același moment, la câte una dintre clasele respective 
- cls
- Clasele la care profesorii din tuplaj au de făcut câte o lecție, în câte o aceeași zi (și oră). 
Repartizarea pe zile a tuplajelor
Description
Din distribuția pe zile a tuturor lecțiilor se deduc zilele în care au fost repartizate tuplajele existente.
Usage
days2tupl(DZ, TP)
Arguments
| DZ | distribuția pe zile returnată de 'mount_days()'. | 
| TP | setul tuplajelor, dacă există. | 
Value
setul tuplajelor, completat cu un câmp conținând ziua (sau zilele) în care a fost repartizat fiecare.
Lista lecțiilor repartizate în câte o aceeași zi
Description
Asociază fiecărei zile, setul lecțiilor repartizate în acea zi (în format lung, 'prof/cls')
Usage
less2days(DZ)
Arguments
| DZ | distribuția pe zile a tuturor lecțiilor | 
Value
Listă conținând pentru fiecare zi, lecțiile acelei zile
Montează zilele pe lecții, echilibrat
Description
Repartizarea pe zile decurge separat: lecțiile celor neimplicați în cuplaje (plus dacă există, cuplajele "externe"), respectiv ale cuplajelor și membrilor acestora; în final, se adaugă repartizarea lecțiilor din tuplaje (dacă există). Repartiția pe zile a cuplajelor și respectiv, a tuplajelor are caracter "dinamic", repetându-se până când îmbinând cele trei repartiții, distribuția lecțiilor la fiecare clasă este cât se poate de echilibrată (numărul de ore/zi diferă cu cel mult 2 sau 3 ore).
Usage
mount_days(LSS, TPL = NULL, Dfh = 2)
Arguments
| LSS | Setul lecțiilor profesorilor și cuplajelor. | 
| TPL | Setul tuplajelor. | 
| Dfh | Diferența maximă între maximul și minimul de ore/zi la clase. | 
Value
O repartiție pe zile a tuturor lecțiilor, relativ echilibrată.
Examples
    R123 <- mount_days(LSS, TPL, Dfh = 3)