Jestem muzykiem i potrzebuję więcej rytmów w moim życiu!
Polirytm występuje w muzyce (i w naturze), gdy dwa zdarzenia (klaszcze, nuty, migające świetliki itp.) Występują w dwóch różnych regularnych odstępach czasu. Te dwa zdarzenia zdarzają się różną liczbę razy w tym samym przedziale czasowym.
Jeśli stuknę lewą ręką dwa razy, a prawą 3 razy w tym samym czasie, wygląda to trochę tak:
------
R . . .
L . .
Łączniki u góry oznaczają długość wzoru wielotermicznego, który jest najniższą wspólną wielokrotnością lub 2 i 3. Można to rozumieć jako punkt, w którym wzór się powtarza.
Istnieje również „rytm”, który jest wzorem generowanym, gdy któraś ręka stuka:
------
R . . .
L . .
M . ...
Jest to prosty i bardzo popularny polirytm o stosunku 3: 2.
Powiedzmy, że nie chcę robić prostego polirytmu, który mogę wypracować w mojej głowie, więc potrzebuję czegoś, aby to dla mnie wypracować. Mógłbym to zrobić w formie długiej na papierze lub ...
Zasady:
- Napisz kod, aby wygenerować i wyświetlić diagram polirytmii, jak opisano powyżej.
- Dowolny stary język, spróbuj uzyskać jak najmniej bajtów.
- Twój kod przyjmuje dwa argumenty:
- Liczba uderzeń lewą ręką (dodatnia liczba całkowita)
- Liczba uderzeń prawą ręką (dodatnia liczba całkowita)
- Wyliczy długość, która jest najniższą wspólną wielokrotnością dwóch argumentów.
- Górny wiersz będzie się składał z dwóch białych znaków, a następnie łączników wyświetlających długość (długość * '-')
- Druga i trzecia linia pokażą wzór dla prawej i lewej ręki:
- Zacznie się od R lub L, zaznacz, która to ręka, a następnie spację.
- Interwał dla tej ręki jest długością podzieloną przez argument.
- Krany zaczną się od trzeciego znaku, oznaczonego dowolną wybraną postacią. Od tego momentu wyświetla te same znaki „odstęp” między znakami.
- Nie będzie dłuższy niż linia długości.
- Czwarta linia to rytm:
- Rozpocznie się od dużej litery M, po której nastąpi spacja.
- Od trzeciej postaci będzie ona wyświetlała postać (dowolną wybraną przez ciebie postać) na każdej pozycji, w której dotknie się prawej lub lewej ręki.
- Końcowe białe znaki nie mają znaczenia.
Przypadki testowe:
r = 3, l = 2
------
R . . .
L . .
M . ...
r = 4, l = 3
------------
R . . . .
L . . .
M . .. . ..
r = 4, l = 5
--------------------
R . . . .
L . . . . .
M . .. . . . ..
r = 4, l = 7
----------------------------
R . . . .
L . . . . . . .
M . . .. . . . .. .
r = 4, l = 8
--------
R . . . .
L ........
M ........
Miłej gry w golfa!
ri ljako dwie odrębne wartości? Czy możemy na przykład zaakceptować tablicę dwuelementową? A co z ich kolejnością, czy jest to ściśle rprzestrzegane l?